agent-skill-manager 1.20.0 → 1.22.0

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 (2092) hide show
  1. package/README.md +96 -18
  2. package/dist/agent-skill-manager.js +435 -346
  3. package/dist/{chunk-b38qq69j.js → chunk-1becp2v6.js} +1 -1
  4. package/dist/{chunk-jexzjtx5.js → chunk-2bvch8gs.js} +2 -2
  5. package/dist/{chunk-2qybtcgb.js → chunk-a26gjzjk.js} +1 -1
  6. package/dist/{chunk-w4et4kfd.js → chunk-thr0x97h.js} +1 -1
  7. package/node_modules/@balena/dockerignore/LICENSE.md +206 -0
  8. package/node_modules/@balena/dockerignore/README.md +261 -0
  9. package/node_modules/@balena/dockerignore/ignore.js +363 -0
  10. package/node_modules/@balena/dockerignore/index.d.ts +45 -0
  11. package/node_modules/@balena/dockerignore/package.json +49 -0
  12. package/node_modules/@grpc/grpc-js/LICENSE +201 -0
  13. package/node_modules/@grpc/grpc-js/README.md +84 -0
  14. package/node_modules/@grpc/grpc-js/build/src/admin.d.ts +11 -0
  15. package/node_modules/@grpc/grpc-js/build/src/admin.js +30 -0
  16. package/node_modules/@grpc/grpc-js/build/src/admin.js.map +1 -0
  17. package/node_modules/@grpc/grpc-js/build/src/auth-context.d.ts +5 -0
  18. package/node_modules/@grpc/grpc-js/build/src/auth-context.js +19 -0
  19. package/node_modules/@grpc/grpc-js/build/src/auth-context.js.map +1 -0
  20. package/node_modules/@grpc/grpc-js/build/src/backoff-timeout.d.ts +94 -0
  21. package/node_modules/@grpc/grpc-js/build/src/backoff-timeout.js +191 -0
  22. package/node_modules/@grpc/grpc-js/build/src/backoff-timeout.js.map +1 -0
  23. package/node_modules/@grpc/grpc-js/build/src/call-credentials.d.ts +57 -0
  24. package/node_modules/@grpc/grpc-js/build/src/call-credentials.js +153 -0
  25. package/node_modules/@grpc/grpc-js/build/src/call-credentials.js.map +1 -0
  26. package/node_modules/@grpc/grpc-js/build/src/call-interface.d.ts +101 -0
  27. package/node_modules/@grpc/grpc-js/build/src/call-interface.js +100 -0
  28. package/node_modules/@grpc/grpc-js/build/src/call-interface.js.map +1 -0
  29. package/node_modules/@grpc/grpc-js/build/src/call-number.d.ts +1 -0
  30. package/node_modules/@grpc/grpc-js/build/src/call-number.js +24 -0
  31. package/node_modules/@grpc/grpc-js/build/src/call-number.js.map +1 -0
  32. package/node_modules/@grpc/grpc-js/build/src/call.d.ts +86 -0
  33. package/node_modules/@grpc/grpc-js/build/src/call.js +152 -0
  34. package/node_modules/@grpc/grpc-js/build/src/call.js.map +1 -0
  35. package/node_modules/@grpc/grpc-js/build/src/certificate-provider.d.ts +43 -0
  36. package/node_modules/@grpc/grpc-js/build/src/certificate-provider.js +141 -0
  37. package/node_modules/@grpc/grpc-js/build/src/certificate-provider.js.map +1 -0
  38. package/node_modules/@grpc/grpc-js/build/src/channel-credentials.d.ts +119 -0
  39. package/node_modules/@grpc/grpc-js/build/src/channel-credentials.js +430 -0
  40. package/node_modules/@grpc/grpc-js/build/src/channel-credentials.js.map +1 -0
  41. package/node_modules/@grpc/grpc-js/build/src/channel-options.d.ts +81 -0
  42. package/node_modules/@grpc/grpc-js/build/src/channel-options.js +73 -0
  43. package/node_modules/@grpc/grpc-js/build/src/channel-options.js.map +1 -0
  44. package/node_modules/@grpc/grpc-js/build/src/channel.d.ts +76 -0
  45. package/node_modules/@grpc/grpc-js/build/src/channel.js +68 -0
  46. package/node_modules/@grpc/grpc-js/build/src/channel.js.map +1 -0
  47. package/node_modules/@grpc/grpc-js/build/src/channelz.d.ts +158 -0
  48. package/node_modules/@grpc/grpc-js/build/src/channelz.js +598 -0
  49. package/node_modules/@grpc/grpc-js/build/src/channelz.js.map +1 -0
  50. package/node_modules/@grpc/grpc-js/build/src/client-interceptors.d.ts +123 -0
  51. package/node_modules/@grpc/grpc-js/build/src/client-interceptors.js +434 -0
  52. package/node_modules/@grpc/grpc-js/build/src/client-interceptors.js.map +1 -0
  53. package/node_modules/@grpc/grpc-js/build/src/client.d.ts +74 -0
  54. package/node_modules/@grpc/grpc-js/build/src/client.js +433 -0
  55. package/node_modules/@grpc/grpc-js/build/src/client.js.map +1 -0
  56. package/node_modules/@grpc/grpc-js/build/src/compression-algorithms.d.ts +5 -0
  57. package/node_modules/@grpc/grpc-js/build/src/compression-algorithms.js +26 -0
  58. package/node_modules/@grpc/grpc-js/build/src/compression-algorithms.js.map +1 -0
  59. package/node_modules/@grpc/grpc-js/build/src/compression-filter.d.ts +28 -0
  60. package/node_modules/@grpc/grpc-js/build/src/compression-filter.js +295 -0
  61. package/node_modules/@grpc/grpc-js/build/src/compression-filter.js.map +1 -0
  62. package/node_modules/@grpc/grpc-js/build/src/connectivity-state.d.ts +7 -0
  63. package/node_modules/@grpc/grpc-js/build/src/connectivity-state.js +28 -0
  64. package/node_modules/@grpc/grpc-js/build/src/connectivity-state.js.map +1 -0
  65. package/node_modules/@grpc/grpc-js/build/src/constants.d.ts +38 -0
  66. package/node_modules/@grpc/grpc-js/build/src/constants.js +64 -0
  67. package/node_modules/@grpc/grpc-js/build/src/constants.js.map +1 -0
  68. package/node_modules/@grpc/grpc-js/build/src/control-plane-status.d.ts +5 -0
  69. package/node_modules/@grpc/grpc-js/build/src/control-plane-status.js +42 -0
  70. package/node_modules/@grpc/grpc-js/build/src/control-plane-status.js.map +1 -0
  71. package/node_modules/@grpc/grpc-js/build/src/deadline.d.ts +22 -0
  72. package/node_modules/@grpc/grpc-js/build/src/deadline.js +108 -0
  73. package/node_modules/@grpc/grpc-js/build/src/deadline.js.map +1 -0
  74. package/node_modules/@grpc/grpc-js/build/src/duration.d.ts +15 -0
  75. package/node_modules/@grpc/grpc-js/build/src/duration.js +74 -0
  76. package/node_modules/@grpc/grpc-js/build/src/duration.js.map +1 -0
  77. package/node_modules/@grpc/grpc-js/build/src/environment.d.ts +1 -0
  78. package/node_modules/@grpc/grpc-js/build/src/environment.js +22 -0
  79. package/node_modules/@grpc/grpc-js/build/src/environment.js.map +1 -0
  80. package/node_modules/@grpc/grpc-js/build/src/error.d.ts +2 -0
  81. package/node_modules/@grpc/grpc-js/build/src/error.js +40 -0
  82. package/node_modules/@grpc/grpc-js/build/src/error.js.map +1 -0
  83. package/node_modules/@grpc/grpc-js/build/src/events.d.ts +9 -0
  84. package/node_modules/@grpc/grpc-js/build/src/events.js +19 -0
  85. package/node_modules/@grpc/grpc-js/build/src/events.js.map +1 -0
  86. package/node_modules/@grpc/grpc-js/build/src/experimental.d.ts +20 -0
  87. package/node_modules/@grpc/grpc-js/build/src/experimental.js +58 -0
  88. package/node_modules/@grpc/grpc-js/build/src/experimental.js.map +1 -0
  89. package/node_modules/@grpc/grpc-js/build/src/filter-stack.d.ts +21 -0
  90. package/node_modules/@grpc/grpc-js/build/src/filter-stack.js +82 -0
  91. package/node_modules/@grpc/grpc-js/build/src/filter-stack.js.map +1 -0
  92. package/node_modules/@grpc/grpc-js/build/src/filter.d.ts +25 -0
  93. package/node_modules/@grpc/grpc-js/build/src/filter.js +38 -0
  94. package/node_modules/@grpc/grpc-js/build/src/filter.js.map +1 -0
  95. package/node_modules/@grpc/grpc-js/build/src/generated/channelz.d.ts +118 -0
  96. package/node_modules/@grpc/grpc-js/build/src/generated/channelz.js +3 -0
  97. package/node_modules/@grpc/grpc-js/build/src/generated/channelz.js.map +1 -0
  98. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/Any.d.ts +9 -0
  99. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/Any.js +4 -0
  100. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/Any.js.map +1 -0
  101. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/BoolValue.d.ts +6 -0
  102. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/BoolValue.js +4 -0
  103. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/BoolValue.js.map +1 -0
  104. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/BytesValue.d.ts +6 -0
  105. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/BytesValue.js +4 -0
  106. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/BytesValue.js.map +1 -0
  107. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/DescriptorProto.d.ts +51 -0
  108. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/DescriptorProto.js +4 -0
  109. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/DescriptorProto.js.map +1 -0
  110. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/DoubleValue.d.ts +6 -0
  111. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/DoubleValue.js +4 -0
  112. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/DoubleValue.js.map +1 -0
  113. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/Duration.d.ts +9 -0
  114. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/Duration.js +4 -0
  115. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/Duration.js.map +1 -0
  116. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/Edition.d.ts +16 -0
  117. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/Edition.js +19 -0
  118. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/Edition.js.map +1 -0
  119. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/EnumDescriptorProto.d.ts +27 -0
  120. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/EnumDescriptorProto.js +4 -0
  121. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/EnumDescriptorProto.js.map +1 -0
  122. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/EnumOptions.d.ts +22 -0
  123. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/EnumOptions.js +4 -0
  124. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/EnumOptions.js.map +1 -0
  125. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/EnumValueDescriptorProto.d.ts +11 -0
  126. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/EnumValueDescriptorProto.js +4 -0
  127. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/EnumValueDescriptorProto.js.map +1 -0
  128. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/EnumValueOptions.d.ts +17 -0
  129. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/EnumValueOptions.js +4 -0
  130. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/EnumValueOptions.js.map +1 -0
  131. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/ExtensionRangeOptions.d.ts +34 -0
  132. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/ExtensionRangeOptions.js +10 -0
  133. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/ExtensionRangeOptions.js.map +1 -0
  134. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/FeatureSet.d.ts +83 -0
  135. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/FeatureSet.js +56 -0
  136. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/FeatureSet.js.map +1 -0
  137. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/FeatureSetDefaults.d.ts +22 -0
  138. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/FeatureSetDefaults.js +4 -0
  139. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/FeatureSetDefaults.js.map +1 -0
  140. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/FieldDescriptorProto.d.ts +56 -0
  141. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/FieldDescriptorProto.js +32 -0
  142. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/FieldDescriptorProto.js.map +1 -0
  143. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/FieldOptions.d.ts +99 -0
  144. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/FieldOptions.js +36 -0
  145. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/FieldOptions.js.map +1 -0
  146. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/FileDescriptorProto.d.ts +39 -0
  147. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/FileDescriptorProto.js +4 -0
  148. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/FileDescriptorProto.js.map +1 -0
  149. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/FileDescriptorSet.d.ts +7 -0
  150. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/FileDescriptorSet.js +4 -0
  151. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/FileDescriptorSet.js.map +1 -0
  152. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/FileOptions.d.ts +61 -0
  153. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/FileOptions.js +11 -0
  154. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/FileOptions.js.map +1 -0
  155. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/FloatValue.d.ts +6 -0
  156. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/FloatValue.js +4 -0
  157. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/FloatValue.js.map +1 -0
  158. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/GeneratedCodeInfo.d.ts +27 -0
  159. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/GeneratedCodeInfo.js +11 -0
  160. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/GeneratedCodeInfo.js.map +1 -0
  161. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/Int32Value.d.ts +6 -0
  162. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/Int32Value.js +4 -0
  163. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/Int32Value.js.map +1 -0
  164. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/Int64Value.d.ts +7 -0
  165. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/Int64Value.js +4 -0
  166. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/Int64Value.js.map +1 -0
  167. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/MessageOptions.d.ts +28 -0
  168. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/MessageOptions.js +4 -0
  169. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/MessageOptions.js.map +1 -0
  170. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/MethodDescriptorProto.d.ts +17 -0
  171. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/MethodDescriptorProto.js +4 -0
  172. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/MethodDescriptorProto.js.map +1 -0
  173. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/MethodOptions.d.ts +21 -0
  174. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/MethodOptions.js +11 -0
  175. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/MethodOptions.js.map +1 -0
  176. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/OneofDescriptorProto.d.ts +9 -0
  177. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/OneofDescriptorProto.js +4 -0
  178. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/OneofDescriptorProto.js.map +1 -0
  179. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/OneofOptions.d.ts +12 -0
  180. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/OneofOptions.js +4 -0
  181. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/OneofOptions.js.map +1 -0
  182. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/ServiceDescriptorProto.d.ts +12 -0
  183. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/ServiceDescriptorProto.js +4 -0
  184. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/ServiceDescriptorProto.js.map +1 -0
  185. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/ServiceOptions.d.ts +12 -0
  186. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/ServiceOptions.js +4 -0
  187. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/ServiceOptions.js.map +1 -0
  188. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/SourceCodeInfo.d.ts +20 -0
  189. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/SourceCodeInfo.js +4 -0
  190. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/SourceCodeInfo.js.map +1 -0
  191. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/StringValue.d.ts +6 -0
  192. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/StringValue.js +4 -0
  193. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/StringValue.js.map +1 -0
  194. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/SymbolVisibility.d.ts +7 -0
  195. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/SymbolVisibility.js +10 -0
  196. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/SymbolVisibility.js.map +1 -0
  197. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/Timestamp.d.ts +9 -0
  198. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/Timestamp.js +4 -0
  199. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/Timestamp.js.map +1 -0
  200. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/UInt32Value.d.ts +6 -0
  201. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/UInt32Value.js +4 -0
  202. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/UInt32Value.js.map +1 -0
  203. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/UInt64Value.d.ts +7 -0
  204. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/UInt64Value.js +4 -0
  205. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/UInt64Value.js.map +1 -0
  206. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/UninterpretedOption.d.ts +27 -0
  207. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/UninterpretedOption.js +4 -0
  208. package/node_modules/@grpc/grpc-js/build/src/generated/google/protobuf/UninterpretedOption.js.map +1 -0
  209. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/Address.d.ts +79 -0
  210. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/Address.js +4 -0
  211. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/Address.js.map +1 -0
  212. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/Channel.d.ts +64 -0
  213. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/Channel.js +4 -0
  214. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/Channel.js.map +1 -0
  215. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/ChannelConnectivityState.d.ts +24 -0
  216. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/ChannelConnectivityState.js +14 -0
  217. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/ChannelConnectivityState.js.map +1 -0
  218. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/ChannelData.d.ts +72 -0
  219. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/ChannelData.js +4 -0
  220. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/ChannelData.js.map +1 -0
  221. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/ChannelRef.d.ts +27 -0
  222. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/ChannelRef.js +4 -0
  223. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/ChannelRef.js.map +1 -0
  224. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/ChannelTrace.d.ts +41 -0
  225. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/ChannelTrace.js +4 -0
  226. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/ChannelTrace.js.map +1 -0
  227. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/ChannelTraceEvent.d.ts +74 -0
  228. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/ChannelTraceEvent.js +15 -0
  229. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/ChannelTraceEvent.js.map +1 -0
  230. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/Channelz.d.ts +159 -0
  231. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/Channelz.js +4 -0
  232. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/Channelz.js.map +1 -0
  233. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/GetChannelRequest.d.ts +13 -0
  234. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/GetChannelRequest.js +4 -0
  235. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/GetChannelRequest.js.map +1 -0
  236. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/GetChannelResponse.d.ts +15 -0
  237. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/GetChannelResponse.js +4 -0
  238. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/GetChannelResponse.js.map +1 -0
  239. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/GetServerRequest.d.ts +13 -0
  240. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/GetServerRequest.js +4 -0
  241. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/GetServerRequest.js.map +1 -0
  242. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/GetServerResponse.d.ts +15 -0
  243. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/GetServerResponse.js +4 -0
  244. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/GetServerResponse.js.map +1 -0
  245. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/GetServerSocketsRequest.d.ts +35 -0
  246. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/GetServerSocketsRequest.js +4 -0
  247. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/GetServerSocketsRequest.js.map +1 -0
  248. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/GetServerSocketsResponse.d.ts +29 -0
  249. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/GetServerSocketsResponse.js +4 -0
  250. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/GetServerSocketsResponse.js.map +1 -0
  251. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/GetServersRequest.d.ts +33 -0
  252. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/GetServersRequest.js +4 -0
  253. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/GetServersRequest.js.map +1 -0
  254. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/GetServersResponse.d.ts +29 -0
  255. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/GetServersResponse.js +4 -0
  256. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/GetServersResponse.js.map +1 -0
  257. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/GetSocketRequest.d.ts +25 -0
  258. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/GetSocketRequest.js +4 -0
  259. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/GetSocketRequest.js.map +1 -0
  260. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/GetSocketResponse.d.ts +15 -0
  261. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/GetSocketResponse.js +4 -0
  262. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/GetSocketResponse.js.map +1 -0
  263. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/GetSubchannelRequest.d.ts +13 -0
  264. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/GetSubchannelRequest.js +4 -0
  265. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/GetSubchannelRequest.js.map +1 -0
  266. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/GetSubchannelResponse.d.ts +15 -0
  267. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/GetSubchannelResponse.js +4 -0
  268. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/GetSubchannelResponse.js.map +1 -0
  269. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/GetTopChannelsRequest.d.ts +33 -0
  270. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/GetTopChannelsRequest.js +4 -0
  271. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/GetTopChannelsRequest.js.map +1 -0
  272. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/GetTopChannelsResponse.d.ts +29 -0
  273. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/GetTopChannelsResponse.js +4 -0
  274. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/GetTopChannelsResponse.js.map +1 -0
  275. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/Security.d.ts +79 -0
  276. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/Security.js +4 -0
  277. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/Security.js.map +1 -0
  278. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/Server.d.ts +41 -0
  279. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/Server.js +4 -0
  280. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/Server.js.map +1 -0
  281. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/ServerData.d.ts +53 -0
  282. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/ServerData.js +4 -0
  283. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/ServerData.js.map +1 -0
  284. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/ServerRef.d.ts +27 -0
  285. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/ServerRef.js +4 -0
  286. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/ServerRef.js.map +1 -0
  287. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/Socket.d.ts +66 -0
  288. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/Socket.js +4 -0
  289. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/Socket.js.map +1 -0
  290. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/SocketData.d.ts +146 -0
  291. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/SocketData.js +4 -0
  292. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/SocketData.js.map +1 -0
  293. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/SocketOption.d.ts +43 -0
  294. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/SocketOption.js +4 -0
  295. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/SocketOption.js.map +1 -0
  296. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/SocketOptionLinger.d.ts +29 -0
  297. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/SocketOptionLinger.js +4 -0
  298. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/SocketOptionLinger.js.map +1 -0
  299. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/SocketOptionTcpInfo.d.ts +70 -0
  300. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/SocketOptionTcpInfo.js +4 -0
  301. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/SocketOptionTcpInfo.js.map +1 -0
  302. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/SocketOptionTimeout.d.ts +15 -0
  303. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/SocketOptionTimeout.js +4 -0
  304. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/SocketOptionTimeout.js.map +1 -0
  305. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/SocketRef.d.ts +27 -0
  306. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/SocketRef.js +4 -0
  307. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/SocketRef.js.map +1 -0
  308. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/Subchannel.d.ts +66 -0
  309. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/Subchannel.js +4 -0
  310. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/Subchannel.js.map +1 -0
  311. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/SubchannelRef.d.ts +27 -0
  312. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/SubchannelRef.js +4 -0
  313. package/node_modules/@grpc/grpc-js/build/src/generated/grpc/channelz/v1/SubchannelRef.js.map +1 -0
  314. package/node_modules/@grpc/grpc-js/build/src/generated/orca.d.ts +145 -0
  315. package/node_modules/@grpc/grpc-js/build/src/generated/orca.js +3 -0
  316. package/node_modules/@grpc/grpc-js/build/src/generated/orca.js.map +1 -0
  317. package/node_modules/@grpc/grpc-js/build/src/generated/validate/AnyRules.d.ts +40 -0
  318. package/node_modules/@grpc/grpc-js/build/src/generated/validate/AnyRules.js +4 -0
  319. package/node_modules/@grpc/grpc-js/build/src/generated/validate/AnyRules.js.map +1 -0
  320. package/node_modules/@grpc/grpc-js/build/src/generated/validate/BoolRules.d.ts +18 -0
  321. package/node_modules/@grpc/grpc-js/build/src/generated/validate/BoolRules.js +4 -0
  322. package/node_modules/@grpc/grpc-js/build/src/generated/validate/BoolRules.js.map +1 -0
  323. package/node_modules/@grpc/grpc-js/build/src/generated/validate/BytesRules.d.ts +149 -0
  324. package/node_modules/@grpc/grpc-js/build/src/generated/validate/BytesRules.js +4 -0
  325. package/node_modules/@grpc/grpc-js/build/src/generated/validate/BytesRules.js.map +1 -0
  326. package/node_modules/@grpc/grpc-js/build/src/generated/validate/DoubleRules.d.ts +82 -0
  327. package/node_modules/@grpc/grpc-js/build/src/generated/validate/DoubleRules.js +4 -0
  328. package/node_modules/@grpc/grpc-js/build/src/generated/validate/DoubleRules.js.map +1 -0
  329. package/node_modules/@grpc/grpc-js/build/src/generated/validate/DurationRules.d.ts +89 -0
  330. package/node_modules/@grpc/grpc-js/build/src/generated/validate/DurationRules.js +4 -0
  331. package/node_modules/@grpc/grpc-js/build/src/generated/validate/DurationRules.js.map +1 -0
  332. package/node_modules/@grpc/grpc-js/build/src/generated/validate/EnumRules.d.ts +48 -0
  333. package/node_modules/@grpc/grpc-js/build/src/generated/validate/EnumRules.js +4 -0
  334. package/node_modules/@grpc/grpc-js/build/src/generated/validate/EnumRules.js.map +1 -0
  335. package/node_modules/@grpc/grpc-js/build/src/generated/validate/FieldRules.d.ts +98 -0
  336. package/node_modules/@grpc/grpc-js/build/src/generated/validate/FieldRules.js +4 -0
  337. package/node_modules/@grpc/grpc-js/build/src/generated/validate/FieldRules.js.map +1 -0
  338. package/node_modules/@grpc/grpc-js/build/src/generated/validate/Fixed32Rules.d.ts +82 -0
  339. package/node_modules/@grpc/grpc-js/build/src/generated/validate/Fixed32Rules.js +4 -0
  340. package/node_modules/@grpc/grpc-js/build/src/generated/validate/Fixed32Rules.js.map +1 -0
  341. package/node_modules/@grpc/grpc-js/build/src/generated/validate/Fixed64Rules.d.ts +83 -0
  342. package/node_modules/@grpc/grpc-js/build/src/generated/validate/Fixed64Rules.js +4 -0
  343. package/node_modules/@grpc/grpc-js/build/src/generated/validate/Fixed64Rules.js.map +1 -0
  344. package/node_modules/@grpc/grpc-js/build/src/generated/validate/FloatRules.d.ts +82 -0
  345. package/node_modules/@grpc/grpc-js/build/src/generated/validate/FloatRules.js +4 -0
  346. package/node_modules/@grpc/grpc-js/build/src/generated/validate/FloatRules.js.map +1 -0
  347. package/node_modules/@grpc/grpc-js/build/src/generated/validate/Int32Rules.d.ts +82 -0
  348. package/node_modules/@grpc/grpc-js/build/src/generated/validate/Int32Rules.js +4 -0
  349. package/node_modules/@grpc/grpc-js/build/src/generated/validate/Int32Rules.js.map +1 -0
  350. package/node_modules/@grpc/grpc-js/build/src/generated/validate/Int64Rules.d.ts +83 -0
  351. package/node_modules/@grpc/grpc-js/build/src/generated/validate/Int64Rules.js +4 -0
  352. package/node_modules/@grpc/grpc-js/build/src/generated/validate/Int64Rules.js.map +1 -0
  353. package/node_modules/@grpc/grpc-js/build/src/generated/validate/KnownRegex.d.ts +30 -0
  354. package/node_modules/@grpc/grpc-js/build/src/generated/validate/KnownRegex.js +19 -0
  355. package/node_modules/@grpc/grpc-js/build/src/generated/validate/KnownRegex.js.map +1 -0
  356. package/node_modules/@grpc/grpc-js/build/src/generated/validate/MapRules.d.ts +62 -0
  357. package/node_modules/@grpc/grpc-js/build/src/generated/validate/MapRules.js +4 -0
  358. package/node_modules/@grpc/grpc-js/build/src/generated/validate/MapRules.js.map +1 -0
  359. package/node_modules/@grpc/grpc-js/build/src/generated/validate/MessageRules.d.ts +30 -0
  360. package/node_modules/@grpc/grpc-js/build/src/generated/validate/MessageRules.js +4 -0
  361. package/node_modules/@grpc/grpc-js/build/src/generated/validate/MessageRules.js.map +1 -0
  362. package/node_modules/@grpc/grpc-js/build/src/generated/validate/RepeatedRules.d.ts +56 -0
  363. package/node_modules/@grpc/grpc-js/build/src/generated/validate/RepeatedRules.js +4 -0
  364. package/node_modules/@grpc/grpc-js/build/src/generated/validate/RepeatedRules.js.map +1 -0
  365. package/node_modules/@grpc/grpc-js/build/src/generated/validate/SFixed32Rules.d.ts +82 -0
  366. package/node_modules/@grpc/grpc-js/build/src/generated/validate/SFixed32Rules.js +4 -0
  367. package/node_modules/@grpc/grpc-js/build/src/generated/validate/SFixed32Rules.js.map +1 -0
  368. package/node_modules/@grpc/grpc-js/build/src/generated/validate/SFixed64Rules.d.ts +83 -0
  369. package/node_modules/@grpc/grpc-js/build/src/generated/validate/SFixed64Rules.js +4 -0
  370. package/node_modules/@grpc/grpc-js/build/src/generated/validate/SFixed64Rules.js.map +1 -0
  371. package/node_modules/@grpc/grpc-js/build/src/generated/validate/SInt32Rules.d.ts +82 -0
  372. package/node_modules/@grpc/grpc-js/build/src/generated/validate/SInt32Rules.js +4 -0
  373. package/node_modules/@grpc/grpc-js/build/src/generated/validate/SInt32Rules.js.map +1 -0
  374. package/node_modules/@grpc/grpc-js/build/src/generated/validate/SInt64Rules.d.ts +83 -0
  375. package/node_modules/@grpc/grpc-js/build/src/generated/validate/SInt64Rules.js +4 -0
  376. package/node_modules/@grpc/grpc-js/build/src/generated/validate/SInt64Rules.js.map +1 -0
  377. package/node_modules/@grpc/grpc-js/build/src/generated/validate/StringRules.d.ts +284 -0
  378. package/node_modules/@grpc/grpc-js/build/src/generated/validate/StringRules.js +4 -0
  379. package/node_modules/@grpc/grpc-js/build/src/generated/validate/StringRules.js.map +1 -0
  380. package/node_modules/@grpc/grpc-js/build/src/generated/validate/TimestampRules.d.ts +102 -0
  381. package/node_modules/@grpc/grpc-js/build/src/generated/validate/TimestampRules.js +4 -0
  382. package/node_modules/@grpc/grpc-js/build/src/generated/validate/TimestampRules.js.map +1 -0
  383. package/node_modules/@grpc/grpc-js/build/src/generated/validate/UInt32Rules.d.ts +82 -0
  384. package/node_modules/@grpc/grpc-js/build/src/generated/validate/UInt32Rules.js +4 -0
  385. package/node_modules/@grpc/grpc-js/build/src/generated/validate/UInt32Rules.js.map +1 -0
  386. package/node_modules/@grpc/grpc-js/build/src/generated/validate/UInt64Rules.d.ts +83 -0
  387. package/node_modules/@grpc/grpc-js/build/src/generated/validate/UInt64Rules.js +4 -0
  388. package/node_modules/@grpc/grpc-js/build/src/generated/validate/UInt64Rules.js.map +1 -0
  389. package/node_modules/@grpc/grpc-js/build/src/generated/xds/data/orca/v3/OrcaLoadReport.d.ts +121 -0
  390. package/node_modules/@grpc/grpc-js/build/src/generated/xds/data/orca/v3/OrcaLoadReport.js +4 -0
  391. package/node_modules/@grpc/grpc-js/build/src/generated/xds/data/orca/v3/OrcaLoadReport.js.map +1 -0
  392. package/node_modules/@grpc/grpc-js/build/src/generated/xds/service/orca/v3/OpenRcaService.d.ts +36 -0
  393. package/node_modules/@grpc/grpc-js/build/src/generated/xds/service/orca/v3/OpenRcaService.js +4 -0
  394. package/node_modules/@grpc/grpc-js/build/src/generated/xds/service/orca/v3/OpenRcaService.js.map +1 -0
  395. package/node_modules/@grpc/grpc-js/build/src/generated/xds/service/orca/v3/OrcaLoadReportRequest.d.ts +25 -0
  396. package/node_modules/@grpc/grpc-js/build/src/generated/xds/service/orca/v3/OrcaLoadReportRequest.js +4 -0
  397. package/node_modules/@grpc/grpc-js/build/src/generated/xds/service/orca/v3/OrcaLoadReportRequest.js.map +1 -0
  398. package/node_modules/@grpc/grpc-js/build/src/http_proxy.d.ts +16 -0
  399. package/node_modules/@grpc/grpc-js/build/src/http_proxy.js +274 -0
  400. package/node_modules/@grpc/grpc-js/build/src/http_proxy.js.map +1 -0
  401. package/node_modules/@grpc/grpc-js/build/src/index.d.ts +79 -0
  402. package/node_modules/@grpc/grpc-js/build/src/index.js +148 -0
  403. package/node_modules/@grpc/grpc-js/build/src/index.js.map +1 -0
  404. package/node_modules/@grpc/grpc-js/build/src/internal-channel.d.ts +124 -0
  405. package/node_modules/@grpc/grpc-js/build/src/internal-channel.js +605 -0
  406. package/node_modules/@grpc/grpc-js/build/src/internal-channel.js.map +1 -0
  407. package/node_modules/@grpc/grpc-js/build/src/load-balancer-child-handler.d.ts +24 -0
  408. package/node_modules/@grpc/grpc-js/build/src/load-balancer-child-handler.js +151 -0
  409. package/node_modules/@grpc/grpc-js/build/src/load-balancer-child-handler.js.map +1 -0
  410. package/node_modules/@grpc/grpc-js/build/src/load-balancer-outlier-detection.d.ts +71 -0
  411. package/node_modules/@grpc/grpc-js/build/src/load-balancer-outlier-detection.js +571 -0
  412. package/node_modules/@grpc/grpc-js/build/src/load-balancer-outlier-detection.js.map +1 -0
  413. package/node_modules/@grpc/grpc-js/build/src/load-balancer-pick-first.d.ts +134 -0
  414. package/node_modules/@grpc/grpc-js/build/src/load-balancer-pick-first.js +514 -0
  415. package/node_modules/@grpc/grpc-js/build/src/load-balancer-pick-first.js.map +1 -0
  416. package/node_modules/@grpc/grpc-js/build/src/load-balancer-round-robin.d.ts +24 -0
  417. package/node_modules/@grpc/grpc-js/build/src/load-balancer-round-robin.js +204 -0
  418. package/node_modules/@grpc/grpc-js/build/src/load-balancer-round-robin.js.map +1 -0
  419. package/node_modules/@grpc/grpc-js/build/src/load-balancer-weighted-round-robin.d.ts +20 -0
  420. package/node_modules/@grpc/grpc-js/build/src/load-balancer-weighted-round-robin.js +392 -0
  421. package/node_modules/@grpc/grpc-js/build/src/load-balancer-weighted-round-robin.js.map +1 -0
  422. package/node_modules/@grpc/grpc-js/build/src/load-balancer.d.ts +101 -0
  423. package/node_modules/@grpc/grpc-js/build/src/load-balancer.js +116 -0
  424. package/node_modules/@grpc/grpc-js/build/src/load-balancer.js.map +1 -0
  425. package/node_modules/@grpc/grpc-js/build/src/load-balancing-call.d.ts +49 -0
  426. package/node_modules/@grpc/grpc-js/build/src/load-balancing-call.js +302 -0
  427. package/node_modules/@grpc/grpc-js/build/src/load-balancing-call.js.map +1 -0
  428. package/node_modules/@grpc/grpc-js/build/src/logging.d.ts +7 -0
  429. package/node_modules/@grpc/grpc-js/build/src/logging.js +122 -0
  430. package/node_modules/@grpc/grpc-js/build/src/logging.js.map +1 -0
  431. package/node_modules/@grpc/grpc-js/build/src/make-client.d.ts +71 -0
  432. package/node_modules/@grpc/grpc-js/build/src/make-client.js +143 -0
  433. package/node_modules/@grpc/grpc-js/build/src/make-client.js.map +1 -0
  434. package/node_modules/@grpc/grpc-js/build/src/metadata.d.ts +100 -0
  435. package/node_modules/@grpc/grpc-js/build/src/metadata.js +272 -0
  436. package/node_modules/@grpc/grpc-js/build/src/metadata.js.map +1 -0
  437. package/node_modules/@grpc/grpc-js/build/src/object-stream.d.ts +27 -0
  438. package/node_modules/@grpc/grpc-js/build/src/object-stream.js +19 -0
  439. package/node_modules/@grpc/grpc-js/build/src/object-stream.js.map +1 -0
  440. package/node_modules/@grpc/grpc-js/build/src/orca.d.ts +89 -0
  441. package/node_modules/@grpc/grpc-js/build/src/orca.js +323 -0
  442. package/node_modules/@grpc/grpc-js/build/src/orca.js.map +1 -0
  443. package/node_modules/@grpc/grpc-js/build/src/picker.d.ts +95 -0
  444. package/node_modules/@grpc/grpc-js/build/src/picker.js +86 -0
  445. package/node_modules/@grpc/grpc-js/build/src/picker.js.map +1 -0
  446. package/node_modules/@grpc/grpc-js/build/src/priority-queue.d.ts +50 -0
  447. package/node_modules/@grpc/grpc-js/build/src/priority-queue.js +120 -0
  448. package/node_modules/@grpc/grpc-js/build/src/priority-queue.js.map +1 -0
  449. package/node_modules/@grpc/grpc-js/build/src/resolver-dns.d.ts +13 -0
  450. package/node_modules/@grpc/grpc-js/build/src/resolver-dns.js +363 -0
  451. package/node_modules/@grpc/grpc-js/build/src/resolver-dns.js.map +1 -0
  452. package/node_modules/@grpc/grpc-js/build/src/resolver-ip.d.ts +1 -0
  453. package/node_modules/@grpc/grpc-js/build/src/resolver-ip.js +106 -0
  454. package/node_modules/@grpc/grpc-js/build/src/resolver-ip.js.map +1 -0
  455. package/node_modules/@grpc/grpc-js/build/src/resolver-uds.d.ts +1 -0
  456. package/node_modules/@grpc/grpc-js/build/src/resolver-uds.js +51 -0
  457. package/node_modules/@grpc/grpc-js/build/src/resolver-uds.js.map +1 -0
  458. package/node_modules/@grpc/grpc-js/build/src/resolver.d.ts +102 -0
  459. package/node_modules/@grpc/grpc-js/build/src/resolver.js +89 -0
  460. package/node_modules/@grpc/grpc-js/build/src/resolver.js.map +1 -0
  461. package/node_modules/@grpc/grpc-js/build/src/resolving-call.d.ts +54 -0
  462. package/node_modules/@grpc/grpc-js/build/src/resolving-call.js +319 -0
  463. package/node_modules/@grpc/grpc-js/build/src/resolving-call.js.map +1 -0
  464. package/node_modules/@grpc/grpc-js/build/src/resolving-load-balancer.d.ts +70 -0
  465. package/node_modules/@grpc/grpc-js/build/src/resolving-load-balancer.js +304 -0
  466. package/node_modules/@grpc/grpc-js/build/src/resolving-load-balancer.js.map +1 -0
  467. package/node_modules/@grpc/grpc-js/build/src/retrying-call.d.ts +100 -0
  468. package/node_modules/@grpc/grpc-js/build/src/retrying-call.js +724 -0
  469. package/node_modules/@grpc/grpc-js/build/src/retrying-call.js.map +1 -0
  470. package/node_modules/@grpc/grpc-js/build/src/server-call.d.ts +141 -0
  471. package/node_modules/@grpc/grpc-js/build/src/server-call.js +226 -0
  472. package/node_modules/@grpc/grpc-js/build/src/server-call.js.map +1 -0
  473. package/node_modules/@grpc/grpc-js/build/src/server-credentials.d.ts +48 -0
  474. package/node_modules/@grpc/grpc-js/build/src/server-credentials.js +314 -0
  475. package/node_modules/@grpc/grpc-js/build/src/server-credentials.js.map +1 -0
  476. package/node_modules/@grpc/grpc-js/build/src/server-interceptors.d.ts +216 -0
  477. package/node_modules/@grpc/grpc-js/build/src/server-interceptors.js +817 -0
  478. package/node_modules/@grpc/grpc-js/build/src/server-interceptors.js.map +1 -0
  479. package/node_modules/@grpc/grpc-js/build/src/server.d.ts +140 -0
  480. package/node_modules/@grpc/grpc-js/build/src/server.js +1608 -0
  481. package/node_modules/@grpc/grpc-js/build/src/server.js.map +1 -0
  482. package/node_modules/@grpc/grpc-js/build/src/service-config.d.ts +58 -0
  483. package/node_modules/@grpc/grpc-js/build/src/service-config.js +430 -0
  484. package/node_modules/@grpc/grpc-js/build/src/service-config.js.map +1 -0
  485. package/node_modules/@grpc/grpc-js/build/src/single-subchannel-channel.d.ts +25 -0
  486. package/node_modules/@grpc/grpc-js/build/src/single-subchannel-channel.js +245 -0
  487. package/node_modules/@grpc/grpc-js/build/src/single-subchannel-channel.js.map +1 -0
  488. package/node_modules/@grpc/grpc-js/build/src/status-builder.d.ts +28 -0
  489. package/node_modules/@grpc/grpc-js/build/src/status-builder.js +68 -0
  490. package/node_modules/@grpc/grpc-js/build/src/status-builder.js.map +1 -0
  491. package/node_modules/@grpc/grpc-js/build/src/stream-decoder.d.ts +12 -0
  492. package/node_modules/@grpc/grpc-js/build/src/stream-decoder.js +100 -0
  493. package/node_modules/@grpc/grpc-js/build/src/stream-decoder.js.map +1 -0
  494. package/node_modules/@grpc/grpc-js/build/src/subchannel-address.d.ts +42 -0
  495. package/node_modules/@grpc/grpc-js/build/src/subchannel-address.js +202 -0
  496. package/node_modules/@grpc/grpc-js/build/src/subchannel-address.js.map +1 -0
  497. package/node_modules/@grpc/grpc-js/build/src/subchannel-call.d.ts +68 -0
  498. package/node_modules/@grpc/grpc-js/build/src/subchannel-call.js +545 -0
  499. package/node_modules/@grpc/grpc-js/build/src/subchannel-call.js.map +1 -0
  500. package/node_modules/@grpc/grpc-js/build/src/subchannel-interface.d.ts +82 -0
  501. package/node_modules/@grpc/grpc-js/build/src/subchannel-interface.js +114 -0
  502. package/node_modules/@grpc/grpc-js/build/src/subchannel-interface.js.map +1 -0
  503. package/node_modules/@grpc/grpc-js/build/src/subchannel-pool.d.ts +40 -0
  504. package/node_modules/@grpc/grpc-js/build/src/subchannel-pool.js +137 -0
  505. package/node_modules/@grpc/grpc-js/build/src/subchannel-pool.js.map +1 -0
  506. package/node_modules/@grpc/grpc-js/build/src/subchannel.d.ts +135 -0
  507. package/node_modules/@grpc/grpc-js/build/src/subchannel.js +397 -0
  508. package/node_modules/@grpc/grpc-js/build/src/subchannel.js.map +1 -0
  509. package/node_modules/@grpc/grpc-js/build/src/tls-helpers.d.ts +2 -0
  510. package/node_modules/@grpc/grpc-js/build/src/tls-helpers.js +34 -0
  511. package/node_modules/@grpc/grpc-js/build/src/tls-helpers.js.map +1 -0
  512. package/node_modules/@grpc/grpc-js/build/src/transport.d.ts +135 -0
  513. package/node_modules/@grpc/grpc-js/build/src/transport.js +640 -0
  514. package/node_modules/@grpc/grpc-js/build/src/transport.js.map +1 -0
  515. package/node_modules/@grpc/grpc-js/build/src/uri-parser.d.ts +13 -0
  516. package/node_modules/@grpc/grpc-js/build/src/uri-parser.js +125 -0
  517. package/node_modules/@grpc/grpc-js/build/src/uri-parser.js.map +1 -0
  518. package/node_modules/@grpc/grpc-js/node_modules/@grpc/proto-loader/LICENSE +201 -0
  519. package/node_modules/@grpc/grpc-js/node_modules/@grpc/proto-loader/README.md +140 -0
  520. package/node_modules/@grpc/grpc-js/node_modules/@grpc/proto-loader/build/bin/proto-loader-gen-types.js +915 -0
  521. package/node_modules/@grpc/grpc-js/node_modules/@grpc/proto-loader/build/bin/proto-loader-gen-types.js.map +1 -0
  522. package/node_modules/@grpc/grpc-js/node_modules/@grpc/proto-loader/build/src/index.d.ts +162 -0
  523. package/node_modules/@grpc/grpc-js/node_modules/@grpc/proto-loader/build/src/index.js +246 -0
  524. package/node_modules/@grpc/grpc-js/node_modules/@grpc/proto-loader/build/src/index.js.map +1 -0
  525. package/node_modules/@grpc/grpc-js/node_modules/@grpc/proto-loader/build/src/util.d.ts +27 -0
  526. package/node_modules/@grpc/grpc-js/node_modules/@grpc/proto-loader/build/src/util.js +89 -0
  527. package/node_modules/@grpc/grpc-js/node_modules/@grpc/proto-loader/build/src/util.js.map +1 -0
  528. package/node_modules/@grpc/grpc-js/node_modules/@grpc/proto-loader/package.json +69 -0
  529. package/node_modules/@grpc/grpc-js/package.json +89 -0
  530. package/node_modules/@grpc/grpc-js/proto/channelz.proto +564 -0
  531. package/node_modules/@grpc/grpc-js/proto/protoc-gen-validate/LICENSE +202 -0
  532. package/node_modules/@grpc/grpc-js/proto/protoc-gen-validate/validate/validate.proto +797 -0
  533. package/node_modules/@grpc/grpc-js/proto/xds/LICENSE +201 -0
  534. package/node_modules/@grpc/grpc-js/proto/xds/xds/data/orca/v3/orca_load_report.proto +58 -0
  535. package/node_modules/@grpc/grpc-js/proto/xds/xds/service/orca/v3/orca.proto +36 -0
  536. package/node_modules/@grpc/grpc-js/src/admin.ts +45 -0
  537. package/node_modules/@grpc/grpc-js/src/auth-context.ts +23 -0
  538. package/node_modules/@grpc/grpc-js/src/backoff-timeout.ts +222 -0
  539. package/node_modules/@grpc/grpc-js/src/call-credentials.ts +227 -0
  540. package/node_modules/@grpc/grpc-js/src/call-interface.ts +208 -0
  541. package/node_modules/@grpc/grpc-js/src/call-number.ts +22 -0
  542. package/node_modules/@grpc/grpc-js/src/call.ts +218 -0
  543. package/node_modules/@grpc/grpc-js/src/certificate-provider.ts +176 -0
  544. package/node_modules/@grpc/grpc-js/src/channel-credentials.ts +523 -0
  545. package/node_modules/@grpc/grpc-js/src/channel-options.ts +128 -0
  546. package/node_modules/@grpc/grpc-js/src/channel.ts +174 -0
  547. package/node_modules/@grpc/grpc-js/src/channelz.ts +909 -0
  548. package/node_modules/@grpc/grpc-js/src/client-interceptors.ts +585 -0
  549. package/node_modules/@grpc/grpc-js/src/client.ts +716 -0
  550. package/node_modules/@grpc/grpc-js/src/compression-algorithms.ts +22 -0
  551. package/node_modules/@grpc/grpc-js/src/compression-filter.ts +358 -0
  552. package/node_modules/@grpc/grpc-js/src/connectivity-state.ts +24 -0
  553. package/node_modules/@grpc/grpc-js/src/constants.ts +66 -0
  554. package/node_modules/@grpc/grpc-js/src/control-plane-status.ts +43 -0
  555. package/node_modules/@grpc/grpc-js/src/deadline.ts +106 -0
  556. package/node_modules/@grpc/grpc-js/src/duration.ts +79 -0
  557. package/node_modules/@grpc/grpc-js/src/environment.ts +19 -0
  558. package/node_modules/@grpc/grpc-js/src/error.ts +37 -0
  559. package/node_modules/@grpc/grpc-js/src/events.ts +26 -0
  560. package/node_modules/@grpc/grpc-js/src/experimental.ts +73 -0
  561. package/node_modules/@grpc/grpc-js/src/filter-stack.ts +100 -0
  562. package/node_modules/@grpc/grpc-js/src/filter.ts +63 -0
  563. package/node_modules/@grpc/grpc-js/src/generated/channelz.ts +119 -0
  564. package/node_modules/@grpc/grpc-js/src/generated/google/protobuf/Any.ts +13 -0
  565. package/node_modules/@grpc/grpc-js/src/generated/google/protobuf/BoolValue.ts +10 -0
  566. package/node_modules/@grpc/grpc-js/src/generated/google/protobuf/BytesValue.ts +10 -0
  567. package/node_modules/@grpc/grpc-js/src/generated/google/protobuf/DescriptorProto.ts +59 -0
  568. package/node_modules/@grpc/grpc-js/src/generated/google/protobuf/DoubleValue.ts +10 -0
  569. package/node_modules/@grpc/grpc-js/src/generated/google/protobuf/Duration.ts +13 -0
  570. package/node_modules/@grpc/grpc-js/src/generated/google/protobuf/Edition.ts +44 -0
  571. package/node_modules/@grpc/grpc-js/src/generated/google/protobuf/EnumDescriptorProto.ts +33 -0
  572. package/node_modules/@grpc/grpc-js/src/generated/google/protobuf/EnumOptions.ts +26 -0
  573. package/node_modules/@grpc/grpc-js/src/generated/google/protobuf/EnumValueDescriptorProto.ts +15 -0
  574. package/node_modules/@grpc/grpc-js/src/generated/google/protobuf/EnumValueOptions.ts +21 -0
  575. package/node_modules/@grpc/grpc-js/src/generated/google/protobuf/ExtensionRangeOptions.ts +49 -0
  576. package/node_modules/@grpc/grpc-js/src/generated/google/protobuf/FeatureSet.ts +183 -0
  577. package/node_modules/@grpc/grpc-js/src/generated/google/protobuf/FeatureSetDefaults.ts +28 -0
  578. package/node_modules/@grpc/grpc-js/src/generated/google/protobuf/FieldDescriptorProto.ts +112 -0
  579. package/node_modules/@grpc/grpc-js/src/generated/google/protobuf/FieldOptions.ts +165 -0
  580. package/node_modules/@grpc/grpc-js/src/generated/google/protobuf/FileDescriptorProto.ts +43 -0
  581. package/node_modules/@grpc/grpc-js/src/generated/google/protobuf/FileDescriptorSet.ts +11 -0
  582. package/node_modules/@grpc/grpc-js/src/generated/google/protobuf/FileOptions.ts +76 -0
  583. package/node_modules/@grpc/grpc-js/src/generated/google/protobuf/FloatValue.ts +10 -0
  584. package/node_modules/@grpc/grpc-js/src/generated/google/protobuf/GeneratedCodeInfo.ts +44 -0
  585. package/node_modules/@grpc/grpc-js/src/generated/google/protobuf/Int32Value.ts +10 -0
  586. package/node_modules/@grpc/grpc-js/src/generated/google/protobuf/Int64Value.ts +11 -0
  587. package/node_modules/@grpc/grpc-js/src/generated/google/protobuf/MessageOptions.ts +32 -0
  588. package/node_modules/@grpc/grpc-js/src/generated/google/protobuf/MethodDescriptorProto.ts +21 -0
  589. package/node_modules/@grpc/grpc-js/src/generated/google/protobuf/MethodOptions.ts +36 -0
  590. package/node_modules/@grpc/grpc-js/src/generated/google/protobuf/OneofDescriptorProto.ts +13 -0
  591. package/node_modules/@grpc/grpc-js/src/generated/google/protobuf/OneofOptions.ts +16 -0
  592. package/node_modules/@grpc/grpc-js/src/generated/google/protobuf/ServiceDescriptorProto.ts +16 -0
  593. package/node_modules/@grpc/grpc-js/src/generated/google/protobuf/ServiceOptions.ts +16 -0
  594. package/node_modules/@grpc/grpc-js/src/generated/google/protobuf/SourceCodeInfo.ts +26 -0
  595. package/node_modules/@grpc/grpc-js/src/generated/google/protobuf/StringValue.ts +10 -0
  596. package/node_modules/@grpc/grpc-js/src/generated/google/protobuf/SymbolVisibility.ts +17 -0
  597. package/node_modules/@grpc/grpc-js/src/generated/google/protobuf/Timestamp.ts +13 -0
  598. package/node_modules/@grpc/grpc-js/src/generated/google/protobuf/UInt32Value.ts +10 -0
  599. package/node_modules/@grpc/grpc-js/src/generated/google/protobuf/UInt64Value.ts +11 -0
  600. package/node_modules/@grpc/grpc-js/src/generated/google/protobuf/UninterpretedOption.ts +33 -0
  601. package/node_modules/@grpc/grpc-js/src/generated/grpc/channelz/v1/Address.ts +89 -0
  602. package/node_modules/@grpc/grpc-js/src/generated/grpc/channelz/v1/Channel.ts +68 -0
  603. package/node_modules/@grpc/grpc-js/src/generated/grpc/channelz/v1/ChannelConnectivityState.ts +45 -0
  604. package/node_modules/@grpc/grpc-js/src/generated/grpc/channelz/v1/ChannelData.ts +76 -0
  605. package/node_modules/@grpc/grpc-js/src/generated/grpc/channelz/v1/ChannelRef.ts +31 -0
  606. package/node_modules/@grpc/grpc-js/src/generated/grpc/channelz/v1/ChannelTrace.ts +45 -0
  607. package/node_modules/@grpc/grpc-js/src/generated/grpc/channelz/v1/ChannelTraceEvent.ts +91 -0
  608. package/node_modules/@grpc/grpc-js/src/generated/grpc/channelz/v1/Channelz.ts +178 -0
  609. package/node_modules/@grpc/grpc-js/src/generated/grpc/channelz/v1/GetChannelRequest.ts +17 -0
  610. package/node_modules/@grpc/grpc-js/src/generated/grpc/channelz/v1/GetChannelResponse.ts +19 -0
  611. package/node_modules/@grpc/grpc-js/src/generated/grpc/channelz/v1/GetServerRequest.ts +17 -0
  612. package/node_modules/@grpc/grpc-js/src/generated/grpc/channelz/v1/GetServerResponse.ts +19 -0
  613. package/node_modules/@grpc/grpc-js/src/generated/grpc/channelz/v1/GetServerSocketsRequest.ts +39 -0
  614. package/node_modules/@grpc/grpc-js/src/generated/grpc/channelz/v1/GetServerSocketsResponse.ts +33 -0
  615. package/node_modules/@grpc/grpc-js/src/generated/grpc/channelz/v1/GetServersRequest.ts +37 -0
  616. package/node_modules/@grpc/grpc-js/src/generated/grpc/channelz/v1/GetServersResponse.ts +33 -0
  617. package/node_modules/@grpc/grpc-js/src/generated/grpc/channelz/v1/GetSocketRequest.ts +29 -0
  618. package/node_modules/@grpc/grpc-js/src/generated/grpc/channelz/v1/GetSocketResponse.ts +19 -0
  619. package/node_modules/@grpc/grpc-js/src/generated/grpc/channelz/v1/GetSubchannelRequest.ts +17 -0
  620. package/node_modules/@grpc/grpc-js/src/generated/grpc/channelz/v1/GetSubchannelResponse.ts +19 -0
  621. package/node_modules/@grpc/grpc-js/src/generated/grpc/channelz/v1/GetTopChannelsRequest.ts +37 -0
  622. package/node_modules/@grpc/grpc-js/src/generated/grpc/channelz/v1/GetTopChannelsResponse.ts +33 -0
  623. package/node_modules/@grpc/grpc-js/src/generated/grpc/channelz/v1/Security.ts +87 -0
  624. package/node_modules/@grpc/grpc-js/src/generated/grpc/channelz/v1/Server.ts +45 -0
  625. package/node_modules/@grpc/grpc-js/src/generated/grpc/channelz/v1/ServerData.ts +57 -0
  626. package/node_modules/@grpc/grpc-js/src/generated/grpc/channelz/v1/ServerRef.ts +31 -0
  627. package/node_modules/@grpc/grpc-js/src/generated/grpc/channelz/v1/Socket.ts +70 -0
  628. package/node_modules/@grpc/grpc-js/src/generated/grpc/channelz/v1/SocketData.ts +150 -0
  629. package/node_modules/@grpc/grpc-js/src/generated/grpc/channelz/v1/SocketOption.ts +47 -0
  630. package/node_modules/@grpc/grpc-js/src/generated/grpc/channelz/v1/SocketOptionLinger.ts +33 -0
  631. package/node_modules/@grpc/grpc-js/src/generated/grpc/channelz/v1/SocketOptionTcpInfo.ts +74 -0
  632. package/node_modules/@grpc/grpc-js/src/generated/grpc/channelz/v1/SocketOptionTimeout.ts +19 -0
  633. package/node_modules/@grpc/grpc-js/src/generated/grpc/channelz/v1/SocketRef.ts +31 -0
  634. package/node_modules/@grpc/grpc-js/src/generated/grpc/channelz/v1/Subchannel.ts +70 -0
  635. package/node_modules/@grpc/grpc-js/src/generated/grpc/channelz/v1/SubchannelRef.ts +31 -0
  636. package/node_modules/@grpc/grpc-js/src/generated/orca.ts +146 -0
  637. package/node_modules/@grpc/grpc-js/src/generated/validate/AnyRules.ts +44 -0
  638. package/node_modules/@grpc/grpc-js/src/generated/validate/BoolRules.ts +22 -0
  639. package/node_modules/@grpc/grpc-js/src/generated/validate/BytesRules.ts +153 -0
  640. package/node_modules/@grpc/grpc-js/src/generated/validate/DoubleRules.ts +86 -0
  641. package/node_modules/@grpc/grpc-js/src/generated/validate/DurationRules.ts +93 -0
  642. package/node_modules/@grpc/grpc-js/src/generated/validate/EnumRules.ts +52 -0
  643. package/node_modules/@grpc/grpc-js/src/generated/validate/FieldRules.ts +102 -0
  644. package/node_modules/@grpc/grpc-js/src/generated/validate/Fixed32Rules.ts +86 -0
  645. package/node_modules/@grpc/grpc-js/src/generated/validate/Fixed64Rules.ts +87 -0
  646. package/node_modules/@grpc/grpc-js/src/generated/validate/FloatRules.ts +86 -0
  647. package/node_modules/@grpc/grpc-js/src/generated/validate/Int32Rules.ts +86 -0
  648. package/node_modules/@grpc/grpc-js/src/generated/validate/Int64Rules.ts +87 -0
  649. package/node_modules/@grpc/grpc-js/src/generated/validate/KnownRegex.ts +38 -0
  650. package/node_modules/@grpc/grpc-js/src/generated/validate/MapRules.ts +66 -0
  651. package/node_modules/@grpc/grpc-js/src/generated/validate/MessageRules.ts +34 -0
  652. package/node_modules/@grpc/grpc-js/src/generated/validate/RepeatedRules.ts +60 -0
  653. package/node_modules/@grpc/grpc-js/src/generated/validate/SFixed32Rules.ts +86 -0
  654. package/node_modules/@grpc/grpc-js/src/generated/validate/SFixed64Rules.ts +87 -0
  655. package/node_modules/@grpc/grpc-js/src/generated/validate/SInt32Rules.ts +86 -0
  656. package/node_modules/@grpc/grpc-js/src/generated/validate/SInt64Rules.ts +87 -0
  657. package/node_modules/@grpc/grpc-js/src/generated/validate/StringRules.ts +288 -0
  658. package/node_modules/@grpc/grpc-js/src/generated/validate/TimestampRules.ts +106 -0
  659. package/node_modules/@grpc/grpc-js/src/generated/validate/UInt32Rules.ts +86 -0
  660. package/node_modules/@grpc/grpc-js/src/generated/validate/UInt64Rules.ts +87 -0
  661. package/node_modules/@grpc/grpc-js/src/generated/xds/data/orca/v3/OrcaLoadReport.ts +113 -0
  662. package/node_modules/@grpc/grpc-js/src/generated/xds/service/orca/v3/OpenRcaService.ts +43 -0
  663. package/node_modules/@grpc/grpc-js/src/generated/xds/service/orca/v3/OrcaLoadReportRequest.ts +29 -0
  664. package/node_modules/@grpc/grpc-js/src/http_proxy.ts +315 -0
  665. package/node_modules/@grpc/grpc-js/src/index.ts +312 -0
  666. package/node_modules/@grpc/grpc-js/src/internal-channel.ts +878 -0
  667. package/node_modules/@grpc/grpc-js/src/load-balancer-child-handler.ts +173 -0
  668. package/node_modules/@grpc/grpc-js/src/load-balancer-outlier-detection.ts +840 -0
  669. package/node_modules/@grpc/grpc-js/src/load-balancer-pick-first.ts +662 -0
  670. package/node_modules/@grpc/grpc-js/src/load-balancer-round-robin.ts +287 -0
  671. package/node_modules/@grpc/grpc-js/src/load-balancer-weighted-round-robin.ts +494 -0
  672. package/node_modules/@grpc/grpc-js/src/load-balancer.ts +258 -0
  673. package/node_modules/@grpc/grpc-js/src/load-balancing-call.ts +387 -0
  674. package/node_modules/@grpc/grpc-js/src/logging.ts +134 -0
  675. package/node_modules/@grpc/grpc-js/src/make-client.ts +238 -0
  676. package/node_modules/@grpc/grpc-js/src/metadata.ts +323 -0
  677. package/node_modules/@grpc/grpc-js/src/object-stream.ts +66 -0
  678. package/node_modules/@grpc/grpc-js/src/orca.ts +349 -0
  679. package/node_modules/@grpc/grpc-js/src/picker.ts +157 -0
  680. package/node_modules/@grpc/grpc-js/src/priority-queue.ts +118 -0
  681. package/node_modules/@grpc/grpc-js/src/resolver-dns.ts +449 -0
  682. package/node_modules/@grpc/grpc-js/src/resolver-ip.ts +124 -0
  683. package/node_modules/@grpc/grpc-js/src/resolver-uds.ts +63 -0
  684. package/node_modules/@grpc/grpc-js/src/resolver.ts +176 -0
  685. package/node_modules/@grpc/grpc-js/src/resolving-call.ts +379 -0
  686. package/node_modules/@grpc/grpc-js/src/resolving-load-balancer.ts +407 -0
  687. package/node_modules/@grpc/grpc-js/src/retrying-call.ts +924 -0
  688. package/node_modules/@grpc/grpc-js/src/server-call.ts +420 -0
  689. package/node_modules/@grpc/grpc-js/src/server-credentials.ts +352 -0
  690. package/node_modules/@grpc/grpc-js/src/server-interceptors.ts +1071 -0
  691. package/node_modules/@grpc/grpc-js/src/server.ts +2212 -0
  692. package/node_modules/@grpc/grpc-js/src/service-config.ts +564 -0
  693. package/node_modules/@grpc/grpc-js/src/single-subchannel-channel.ts +248 -0
  694. package/node_modules/@grpc/grpc-js/src/status-builder.ts +80 -0
  695. package/node_modules/@grpc/grpc-js/src/stream-decoder.ts +110 -0
  696. package/node_modules/@grpc/grpc-js/src/subchannel-address.ts +252 -0
  697. package/node_modules/@grpc/grpc-js/src/subchannel-call.ts +622 -0
  698. package/node_modules/@grpc/grpc-js/src/subchannel-interface.ts +176 -0
  699. package/node_modules/@grpc/grpc-js/src/subchannel-pool.ts +176 -0
  700. package/node_modules/@grpc/grpc-js/src/subchannel.ts +559 -0
  701. package/node_modules/@grpc/grpc-js/src/tls-helpers.ts +35 -0
  702. package/node_modules/@grpc/grpc-js/src/transport.ts +825 -0
  703. package/node_modules/@grpc/grpc-js/src/uri-parser.ts +127 -0
  704. package/node_modules/@grpc/proto-loader/LICENSE +201 -0
  705. package/node_modules/@grpc/proto-loader/README.md +140 -0
  706. package/node_modules/@grpc/proto-loader/build/bin/proto-loader-gen-types.js +913 -0
  707. package/node_modules/@grpc/proto-loader/build/bin/proto-loader-gen-types.js.map +1 -0
  708. package/node_modules/@grpc/proto-loader/build/src/index.d.ts +160 -0
  709. package/node_modules/@grpc/proto-loader/build/src/index.js +244 -0
  710. package/node_modules/@grpc/proto-loader/build/src/index.js.map +1 -0
  711. package/node_modules/@grpc/proto-loader/build/src/util.d.ts +27 -0
  712. package/node_modules/@grpc/proto-loader/build/src/util.js +89 -0
  713. package/node_modules/@grpc/proto-loader/build/src/util.js.map +1 -0
  714. package/node_modules/@grpc/proto-loader/package.json +69 -0
  715. package/node_modules/@js-sdsl/ordered-map/CHANGELOG.md +237 -0
  716. package/node_modules/@js-sdsl/ordered-map/LICENSE +21 -0
  717. package/node_modules/@js-sdsl/ordered-map/README.md +270 -0
  718. package/node_modules/@js-sdsl/ordered-map/README.zh-CN.md +272 -0
  719. package/node_modules/@js-sdsl/ordered-map/dist/cjs/index.d.ts +402 -0
  720. package/node_modules/@js-sdsl/ordered-map/dist/cjs/index.js +795 -0
  721. package/node_modules/@js-sdsl/ordered-map/dist/cjs/index.js.map +1 -0
  722. package/node_modules/@js-sdsl/ordered-map/dist/esm/index.d.ts +402 -0
  723. package/node_modules/@js-sdsl/ordered-map/dist/esm/index.js +975 -0
  724. package/node_modules/@js-sdsl/ordered-map/dist/esm/index.js.map +1 -0
  725. package/node_modules/@js-sdsl/ordered-map/dist/umd/ordered-map.js +1157 -0
  726. package/node_modules/@js-sdsl/ordered-map/dist/umd/ordered-map.min.js +8 -0
  727. package/node_modules/@js-sdsl/ordered-map/dist/umd/ordered-map.min.js.map +1 -0
  728. package/node_modules/@js-sdsl/ordered-map/package.json +138 -0
  729. package/node_modules/@protobufjs/aspromise/LICENSE +26 -0
  730. package/node_modules/@protobufjs/aspromise/README.md +13 -0
  731. package/node_modules/@protobufjs/aspromise/index.d.ts +13 -0
  732. package/node_modules/@protobufjs/aspromise/index.js +52 -0
  733. package/node_modules/@protobufjs/aspromise/package.json +21 -0
  734. package/node_modules/@protobufjs/aspromise/tests/index.js +130 -0
  735. package/node_modules/@protobufjs/base64/LICENSE +26 -0
  736. package/node_modules/@protobufjs/base64/README.md +19 -0
  737. package/node_modules/@protobufjs/base64/index.d.ts +32 -0
  738. package/node_modules/@protobufjs/base64/index.js +139 -0
  739. package/node_modules/@protobufjs/base64/package.json +21 -0
  740. package/node_modules/@protobufjs/base64/tests/index.js +46 -0
  741. package/node_modules/@protobufjs/codegen/LICENSE +26 -0
  742. package/node_modules/@protobufjs/codegen/README.md +49 -0
  743. package/node_modules/@protobufjs/codegen/index.d.ts +31 -0
  744. package/node_modules/@protobufjs/codegen/index.js +99 -0
  745. package/node_modules/@protobufjs/codegen/package.json +13 -0
  746. package/node_modules/@protobufjs/codegen/tests/index.js +13 -0
  747. package/node_modules/@protobufjs/eventemitter/LICENSE +26 -0
  748. package/node_modules/@protobufjs/eventemitter/README.md +22 -0
  749. package/node_modules/@protobufjs/eventemitter/index.d.ts +43 -0
  750. package/node_modules/@protobufjs/eventemitter/index.js +76 -0
  751. package/node_modules/@protobufjs/eventemitter/package.json +21 -0
  752. package/node_modules/@protobufjs/eventemitter/tests/index.js +47 -0
  753. package/node_modules/@protobufjs/fetch/LICENSE +26 -0
  754. package/node_modules/@protobufjs/fetch/README.md +13 -0
  755. package/node_modules/@protobufjs/fetch/index.d.ts +56 -0
  756. package/node_modules/@protobufjs/fetch/index.js +115 -0
  757. package/node_modules/@protobufjs/fetch/package.json +25 -0
  758. package/node_modules/@protobufjs/fetch/tests/index.js +16 -0
  759. package/node_modules/@protobufjs/float/LICENSE +26 -0
  760. package/node_modules/@protobufjs/float/README.md +102 -0
  761. package/node_modules/@protobufjs/float/bench/index.js +87 -0
  762. package/node_modules/@protobufjs/float/bench/suite.js +46 -0
  763. package/node_modules/@protobufjs/float/index.d.ts +83 -0
  764. package/node_modules/@protobufjs/float/index.js +335 -0
  765. package/node_modules/@protobufjs/float/package.json +26 -0
  766. package/node_modules/@protobufjs/float/tests/index.js +100 -0
  767. package/node_modules/@protobufjs/inquire/.npmignore +3 -0
  768. package/node_modules/@protobufjs/inquire/LICENSE +26 -0
  769. package/node_modules/@protobufjs/inquire/README.md +13 -0
  770. package/node_modules/@protobufjs/inquire/index.d.ts +9 -0
  771. package/node_modules/@protobufjs/inquire/index.js +17 -0
  772. package/node_modules/@protobufjs/inquire/package.json +21 -0
  773. package/node_modules/@protobufjs/inquire/tests/data/array.js +1 -0
  774. package/node_modules/@protobufjs/inquire/tests/data/emptyArray.js +1 -0
  775. package/node_modules/@protobufjs/inquire/tests/data/emptyObject.js +1 -0
  776. package/node_modules/@protobufjs/inquire/tests/data/object.js +1 -0
  777. package/node_modules/@protobufjs/inquire/tests/index.js +20 -0
  778. package/node_modules/@protobufjs/path/LICENSE +26 -0
  779. package/node_modules/@protobufjs/path/README.md +19 -0
  780. package/node_modules/@protobufjs/path/index.d.ts +22 -0
  781. package/node_modules/@protobufjs/path/index.js +65 -0
  782. package/node_modules/@protobufjs/path/package.json +21 -0
  783. package/node_modules/@protobufjs/path/tests/index.js +60 -0
  784. package/node_modules/@protobufjs/pool/.npmignore +3 -0
  785. package/node_modules/@protobufjs/pool/LICENSE +26 -0
  786. package/node_modules/@protobufjs/pool/README.md +13 -0
  787. package/node_modules/@protobufjs/pool/index.d.ts +32 -0
  788. package/node_modules/@protobufjs/pool/index.js +48 -0
  789. package/node_modules/@protobufjs/pool/package.json +21 -0
  790. package/node_modules/@protobufjs/pool/tests/index.js +33 -0
  791. package/node_modules/@protobufjs/utf8/.npmignore +3 -0
  792. package/node_modules/@protobufjs/utf8/LICENSE +26 -0
  793. package/node_modules/@protobufjs/utf8/README.md +20 -0
  794. package/node_modules/@protobufjs/utf8/index.d.ts +24 -0
  795. package/node_modules/@protobufjs/utf8/index.js +105 -0
  796. package/node_modules/@protobufjs/utf8/package.json +21 -0
  797. package/node_modules/@protobufjs/utf8/tests/data/utf8.txt +216 -0
  798. package/node_modules/@protobufjs/utf8/tests/index.js +57 -0
  799. package/node_modules/@types/node/LICENSE +21 -0
  800. package/node_modules/@types/node/README.md +16 -0
  801. package/node_modules/@types/node/assert/strict.d.ts +8 -0
  802. package/node_modules/@types/node/assert.d.ts +912 -0
  803. package/node_modules/@types/node/async_hooks.d.ts +497 -0
  804. package/node_modules/@types/node/buffer.d.ts +2142 -0
  805. package/node_modules/@types/node/child_process.d.ts +1355 -0
  806. package/node_modules/@types/node/cluster.d.ts +414 -0
  807. package/node_modules/@types/node/console.d.ts +407 -0
  808. package/node_modules/@types/node/constants.d.ts +18 -0
  809. package/node_modules/@types/node/crypto.d.ts +3243 -0
  810. package/node_modules/@types/node/dgram.d.ts +545 -0
  811. package/node_modules/@types/node/diagnostics_channel.d.ts +128 -0
  812. package/node_modules/@types/node/dns/promises.d.ts +357 -0
  813. package/node_modules/@types/node/dns.d.ts +643 -0
  814. package/node_modules/@types/node/domain.d.ts +169 -0
  815. package/node_modules/@types/node/events.d.ts +623 -0
  816. package/node_modules/@types/node/fs/promises.d.ts +997 -0
  817. package/node_modules/@types/node/fs.d.ts +3723 -0
  818. package/node_modules/@types/node/globals.d.ts +284 -0
  819. package/node_modules/@types/node/globals.global.d.ts +1 -0
  820. package/node_modules/@types/node/http.d.ts +1358 -0
  821. package/node_modules/@types/node/http2.d.ts +2100 -0
  822. package/node_modules/@types/node/https.d.ts +391 -0
  823. package/node_modules/@types/node/index.d.ts +132 -0
  824. package/node_modules/@types/node/inspector.d.ts +2738 -0
  825. package/node_modules/@types/node/module.d.ts +114 -0
  826. package/node_modules/@types/node/net.d.ts +783 -0
  827. package/node_modules/@types/node/os.d.ts +455 -0
  828. package/node_modules/@types/node/package.json +235 -0
  829. package/node_modules/@types/node/path.d.ts +172 -0
  830. package/node_modules/@types/node/perf_hooks.d.ts +555 -0
  831. package/node_modules/@types/node/process.d.ts +1477 -0
  832. package/node_modules/@types/node/punycode.d.ts +117 -0
  833. package/node_modules/@types/node/querystring.d.ts +131 -0
  834. package/node_modules/@types/node/readline.d.ts +542 -0
  835. package/node_modules/@types/node/repl.d.ts +424 -0
  836. package/node_modules/@types/node/stream/consumers.d.ts +24 -0
  837. package/node_modules/@types/node/stream/promises.d.ts +42 -0
  838. package/node_modules/@types/node/stream/web.d.ts +6 -0
  839. package/node_modules/@types/node/stream.d.ts +1218 -0
  840. package/node_modules/@types/node/string_decoder.d.ts +67 -0
  841. package/node_modules/@types/node/timers/promises.d.ts +68 -0
  842. package/node_modules/@types/node/timers.d.ts +94 -0
  843. package/node_modules/@types/node/tls.d.ts +1019 -0
  844. package/node_modules/@types/node/trace_events.d.ts +161 -0
  845. package/node_modules/@types/node/tty.d.ts +206 -0
  846. package/node_modules/@types/node/url.d.ts +798 -0
  847. package/node_modules/@types/node/util.d.ts +1564 -0
  848. package/node_modules/@types/node/v8.d.ts +378 -0
  849. package/node_modules/@types/node/vm.d.ts +508 -0
  850. package/node_modules/@types/node/wasi.d.ts +153 -0
  851. package/node_modules/@types/node/worker_threads.d.ts +649 -0
  852. package/node_modules/@types/node/zlib.d.ts +517 -0
  853. package/node_modules/ansi-regex/index.d.ts +37 -0
  854. package/node_modules/ansi-regex/index.js +10 -0
  855. package/node_modules/ansi-regex/license +9 -0
  856. package/node_modules/ansi-regex/package.json +55 -0
  857. package/node_modules/ansi-regex/readme.md +78 -0
  858. package/node_modules/ansi-styles/index.d.ts +345 -0
  859. package/node_modules/ansi-styles/index.js +163 -0
  860. package/node_modules/ansi-styles/license +9 -0
  861. package/node_modules/ansi-styles/package.json +56 -0
  862. package/node_modules/ansi-styles/readme.md +152 -0
  863. package/node_modules/argparse/LICENSE +254 -0
  864. package/node_modules/argparse/README.md +84 -0
  865. package/node_modules/argparse/argparse.js +3707 -0
  866. package/node_modules/argparse/lib/sub.js +67 -0
  867. package/node_modules/argparse/lib/textwrap.js +440 -0
  868. package/node_modules/argparse/package.json +31 -0
  869. package/node_modules/asn1/Jenkinsfile +65 -0
  870. package/node_modules/asn1/LICENSE +19 -0
  871. package/node_modules/asn1/README.md +50 -0
  872. package/node_modules/asn1/lib/ber/errors.js +13 -0
  873. package/node_modules/asn1/lib/ber/index.js +27 -0
  874. package/node_modules/asn1/lib/ber/reader.js +262 -0
  875. package/node_modules/asn1/lib/ber/types.js +36 -0
  876. package/node_modules/asn1/lib/ber/writer.js +317 -0
  877. package/node_modules/asn1/lib/index.js +20 -0
  878. package/node_modules/asn1/package.json +31 -0
  879. package/node_modules/b4a/LICENSE +201 -0
  880. package/node_modules/b4a/README.md +153 -0
  881. package/node_modules/b4a/browser.js +567 -0
  882. package/node_modules/b4a/index.js +188 -0
  883. package/node_modules/b4a/lib/ascii.js +31 -0
  884. package/node_modules/b4a/lib/base64.js +65 -0
  885. package/node_modules/b4a/lib/hex.js +51 -0
  886. package/node_modules/b4a/lib/latin1.js +31 -0
  887. package/node_modules/b4a/lib/utf16le.js +40 -0
  888. package/node_modules/b4a/lib/utf8.js +141 -0
  889. package/node_modules/b4a/package.json +49 -0
  890. package/node_modules/b4a/react-native.js +5 -0
  891. package/node_modules/bare-events/LICENSE +201 -0
  892. package/node_modules/bare-events/README.md +25 -0
  893. package/node_modules/bare-events/global.d.ts +15 -0
  894. package/node_modules/bare-events/global.js +5 -0
  895. package/node_modules/bare-events/index.d.ts +81 -0
  896. package/node_modules/bare-events/index.js +367 -0
  897. package/node_modules/bare-events/lib/errors.js +26 -0
  898. package/node_modules/bare-events/package.json +61 -0
  899. package/node_modules/bare-events/web.d.ts +79 -0
  900. package/node_modules/bare-events/web.js +335 -0
  901. package/node_modules/bare-fs/CMakeLists.txt +13 -0
  902. package/node_modules/bare-fs/LICENSE +201 -0
  903. package/node_modules/bare-fs/README.md +989 -0
  904. package/node_modules/bare-fs/binding.c +2889 -0
  905. package/node_modules/bare-fs/binding.js +1 -0
  906. package/node_modules/bare-fs/index.d.ts +1223 -0
  907. package/node_modules/bare-fs/index.js +2842 -0
  908. package/node_modules/bare-fs/lib/constants.d.ts +49 -0
  909. package/node_modules/bare-fs/lib/constants.js +49 -0
  910. package/node_modules/bare-fs/lib/errors.d.ts +11 -0
  911. package/node_modules/bare-fs/lib/errors.js +55 -0
  912. package/node_modules/bare-fs/package.json +74 -0
  913. package/node_modules/bare-fs/prebuilds/android-arm/bare-fs.bare +0 -0
  914. package/node_modules/bare-fs/prebuilds/android-arm64/bare-fs.bare +0 -0
  915. package/node_modules/bare-fs/prebuilds/android-ia32/bare-fs.bare +0 -0
  916. package/node_modules/bare-fs/prebuilds/android-x64/bare-fs.bare +0 -0
  917. package/node_modules/bare-fs/prebuilds/darwin-arm64/bare-fs.bare +0 -0
  918. package/node_modules/bare-fs/prebuilds/darwin-x64/bare-fs.bare +0 -0
  919. package/node_modules/bare-fs/prebuilds/ios-arm64/bare-fs.bare +0 -0
  920. package/node_modules/bare-fs/prebuilds/ios-arm64-simulator/bare-fs.bare +0 -0
  921. package/node_modules/bare-fs/prebuilds/ios-x64-simulator/bare-fs.bare +0 -0
  922. package/node_modules/bare-fs/prebuilds/linux-arm64/bare-fs.bare +0 -0
  923. package/node_modules/bare-fs/prebuilds/linux-x64/bare-fs.bare +0 -0
  924. package/node_modules/bare-fs/prebuilds/win32-arm64/bare-fs.bare +0 -0
  925. package/node_modules/bare-fs/prebuilds/win32-x64/bare-fs.bare +0 -0
  926. package/node_modules/bare-fs/promises.d.ts +310 -0
  927. package/node_modules/bare-fs/promises.js +119 -0
  928. package/node_modules/bare-os/CMakeLists.txt +13 -0
  929. package/node_modules/bare-os/LICENSE +201 -0
  930. package/node_modules/bare-os/README.md +11 -0
  931. package/node_modules/bare-os/binding.c +1427 -0
  932. package/node_modules/bare-os/binding.js +1 -0
  933. package/node_modules/bare-os/index.d.ts +143 -0
  934. package/node_modules/bare-os/index.js +129 -0
  935. package/node_modules/bare-os/lib/constants.js +7 -0
  936. package/node_modules/bare-os/lib/errors.js +22 -0
  937. package/node_modules/bare-os/package.json +49 -0
  938. package/node_modules/bare-os/prebuilds/android-arm/bare-os.bare +0 -0
  939. package/node_modules/bare-os/prebuilds/android-arm64/bare-os.bare +0 -0
  940. package/node_modules/bare-os/prebuilds/android-ia32/bare-os.bare +0 -0
  941. package/node_modules/bare-os/prebuilds/android-x64/bare-os.bare +0 -0
  942. package/node_modules/bare-os/prebuilds/darwin-arm64/bare-os.bare +0 -0
  943. package/node_modules/bare-os/prebuilds/darwin-x64/bare-os.bare +0 -0
  944. package/node_modules/bare-os/prebuilds/ios-arm64/bare-os.bare +0 -0
  945. package/node_modules/bare-os/prebuilds/ios-arm64-simulator/bare-os.bare +0 -0
  946. package/node_modules/bare-os/prebuilds/ios-x64-simulator/bare-os.bare +0 -0
  947. package/node_modules/bare-os/prebuilds/linux-arm64/bare-os.bare +0 -0
  948. package/node_modules/bare-os/prebuilds/linux-x64/bare-os.bare +0 -0
  949. package/node_modules/bare-os/prebuilds/win32-arm64/bare-os.bare +0 -0
  950. package/node_modules/bare-os/prebuilds/win32-x64/bare-os.bare +0 -0
  951. package/node_modules/bare-path/LICENSE +201 -0
  952. package/node_modules/bare-path/NOTICE +28 -0
  953. package/node_modules/bare-path/README.md +19 -0
  954. package/node_modules/bare-path/index.js +11 -0
  955. package/node_modules/bare-path/lib/constants.js +11 -0
  956. package/node_modules/bare-path/lib/posix.js +242 -0
  957. package/node_modules/bare-path/lib/shared.js +67 -0
  958. package/node_modules/bare-path/lib/win32.js +513 -0
  959. package/node_modules/bare-path/package.json +36 -0
  960. package/node_modules/bare-stream/LICENSE +201 -0
  961. package/node_modules/bare-stream/README.md +15 -0
  962. package/node_modules/bare-stream/global.js +12 -0
  963. package/node_modules/bare-stream/index.d.ts +235 -0
  964. package/node_modules/bare-stream/index.js +492 -0
  965. package/node_modules/bare-stream/package.json +70 -0
  966. package/node_modules/bare-stream/promises.js +3 -0
  967. package/node_modules/bare-stream/web.d.ts +152 -0
  968. package/node_modules/bare-stream/web.js +607 -0
  969. package/node_modules/bare-url/CMakeLists.txt +27 -0
  970. package/node_modules/bare-url/LICENSE +201 -0
  971. package/node_modules/bare-url/README.md +19 -0
  972. package/node_modules/bare-url/binding.c +186 -0
  973. package/node_modules/bare-url/binding.js +1 -0
  974. package/node_modules/bare-url/global.d.ts +12 -0
  975. package/node_modules/bare-url/global.js +2 -0
  976. package/node_modules/bare-url/index.d.ts +41 -0
  977. package/node_modules/bare-url/index.js +407 -0
  978. package/node_modules/bare-url/lib/errors.d.ts +10 -0
  979. package/node_modules/bare-url/lib/errors.js +33 -0
  980. package/node_modules/bare-url/lib/url-search-params.d.ts +23 -0
  981. package/node_modules/bare-url/lib/url-search-params.js +194 -0
  982. package/node_modules/bare-url/package.json +54 -0
  983. package/node_modules/bare-url/prebuilds/android-arm/bare-url.bare +0 -0
  984. package/node_modules/bare-url/prebuilds/android-arm64/bare-url.bare +0 -0
  985. package/node_modules/bare-url/prebuilds/android-ia32/bare-url.bare +0 -0
  986. package/node_modules/bare-url/prebuilds/android-x64/bare-url.bare +0 -0
  987. package/node_modules/bare-url/prebuilds/darwin-arm64/bare-url.bare +0 -0
  988. package/node_modules/bare-url/prebuilds/darwin-x64/bare-url.bare +0 -0
  989. package/node_modules/bare-url/prebuilds/ios-arm64/bare-url.bare +0 -0
  990. package/node_modules/bare-url/prebuilds/ios-arm64-simulator/bare-url.bare +0 -0
  991. package/node_modules/bare-url/prebuilds/ios-x64-simulator/bare-url.bare +0 -0
  992. package/node_modules/bare-url/prebuilds/linux-arm64/bare-url.bare +0 -0
  993. package/node_modules/bare-url/prebuilds/linux-x64/bare-url.bare +0 -0
  994. package/node_modules/bare-url/prebuilds/win32-arm64/bare-url.bare +0 -0
  995. package/node_modules/bare-url/prebuilds/win32-x64/bare-url.bare +0 -0
  996. package/node_modules/base64-js/LICENSE +21 -0
  997. package/node_modules/base64-js/README.md +34 -0
  998. package/node_modules/base64-js/base64js.min.js +1 -0
  999. package/node_modules/base64-js/index.d.ts +3 -0
  1000. package/node_modules/base64-js/index.js +150 -0
  1001. package/node_modules/base64-js/package.json +47 -0
  1002. package/node_modules/bcrypt-pbkdf/CONTRIBUTING.md +13 -0
  1003. package/node_modules/bcrypt-pbkdf/LICENSE +66 -0
  1004. package/node_modules/bcrypt-pbkdf/README.md +45 -0
  1005. package/node_modules/bcrypt-pbkdf/index.js +556 -0
  1006. package/node_modules/bcrypt-pbkdf/package.json +15 -0
  1007. package/node_modules/bl/.travis.yml +17 -0
  1008. package/node_modules/bl/BufferList.js +396 -0
  1009. package/node_modules/bl/LICENSE.md +13 -0
  1010. package/node_modules/bl/README.md +247 -0
  1011. package/node_modules/bl/bl.js +84 -0
  1012. package/node_modules/bl/package.json +37 -0
  1013. package/node_modules/bl/test/convert.js +21 -0
  1014. package/node_modules/bl/test/indexOf.js +492 -0
  1015. package/node_modules/bl/test/isBufferList.js +32 -0
  1016. package/node_modules/bl/test/test.js +869 -0
  1017. package/node_modules/buffer/AUTHORS.md +70 -0
  1018. package/node_modules/buffer/LICENSE +21 -0
  1019. package/node_modules/buffer/README.md +410 -0
  1020. package/node_modules/buffer/index.d.ts +186 -0
  1021. package/node_modules/buffer/index.js +1817 -0
  1022. package/node_modules/buffer/package.json +96 -0
  1023. package/node_modules/buildcheck/.eslintrc.js +5 -0
  1024. package/node_modules/buildcheck/.github/workflows/ci.yml +88 -0
  1025. package/node_modules/buildcheck/.github/workflows/lint.yml +27 -0
  1026. package/node_modules/buildcheck/.gitignore +3 -0
  1027. package/node_modules/buildcheck/LICENSE +19 -0
  1028. package/node_modules/buildcheck/README.md +106 -0
  1029. package/node_modules/buildcheck/deps/Find-VisualStudio.cs +250 -0
  1030. package/node_modules/buildcheck/lib/findvs.js +361 -0
  1031. package/node_modules/buildcheck/lib/index.js +738 -0
  1032. package/node_modules/buildcheck/package.json +36 -0
  1033. package/node_modules/buildcheck/test/test.js +8 -0
  1034. package/node_modules/chownr/LICENSE +15 -0
  1035. package/node_modules/chownr/README.md +3 -0
  1036. package/node_modules/chownr/chownr.js +167 -0
  1037. package/node_modules/chownr/package.json +29 -0
  1038. package/node_modules/cliui/LICENSE.txt +14 -0
  1039. package/node_modules/cliui/README.md +141 -0
  1040. package/node_modules/cliui/build/index.cjs +302 -0
  1041. package/node_modules/cliui/build/index.d.cts +43 -0
  1042. package/node_modules/cliui/build/lib/index.js +287 -0
  1043. package/node_modules/cliui/build/lib/string-utils.js +27 -0
  1044. package/node_modules/cliui/index.mjs +13 -0
  1045. package/node_modules/cliui/package.json +83 -0
  1046. package/node_modules/color-convert/LICENSE +21 -0
  1047. package/node_modules/color-convert/README.md +68 -0
  1048. package/node_modules/color-convert/conversions.js +839 -0
  1049. package/node_modules/color-convert/index.js +81 -0
  1050. package/node_modules/color-convert/package.json +48 -0
  1051. package/node_modules/color-convert/route.js +97 -0
  1052. package/node_modules/color-name/LICENSE +8 -0
  1053. package/node_modules/color-name/README.md +11 -0
  1054. package/node_modules/color-name/index.js +152 -0
  1055. package/node_modules/color-name/package.json +28 -0
  1056. package/node_modules/cpu-features/.eslintrc.js +5 -0
  1057. package/node_modules/cpu-features/.github/workflows/ci.yml +74 -0
  1058. package/node_modules/cpu-features/.github/workflows/lint.yml +27 -0
  1059. package/node_modules/cpu-features/LICENSE +19 -0
  1060. package/node_modules/cpu-features/README.md +59 -0
  1061. package/node_modules/cpu-features/binding.gyp +16 -0
  1062. package/node_modules/cpu-features/build/Makefile +352 -0
  1063. package/node_modules/cpu-features/build/Release/.deps/Release/cpu_features.a.d +1 -0
  1064. package/node_modules/cpu-features/build/Release/.deps/Release/cpufeatures.node.d +1 -0
  1065. package/node_modules/cpu-features/build/Release/.deps/Release/obj.target/cpu_features/deps/cpu_features/src/filesystem.o.d +8 -0
  1066. package/node_modules/cpu-features/build/Release/.deps/Release/obj.target/cpu_features/deps/cpu_features/src/hwcaps.o.d +12 -0
  1067. package/node_modules/cpu-features/build/Release/.deps/Release/obj.target/cpu_features/deps/cpu_features/src/impl_aarch64_linux_or_android.o.d +6 -0
  1068. package/node_modules/cpu-features/build/Release/.deps/Release/obj.target/cpu_features/deps/cpu_features/src/impl_aarch64_macos_or_iphone.o.d +26 -0
  1069. package/node_modules/cpu-features/build/Release/.deps/Release/obj.target/cpu_features/deps/cpu_features/src/impl_aarch64_windows.o.d +6 -0
  1070. package/node_modules/cpu-features/build/Release/.deps/Release/obj.target/cpu_features/deps/cpu_features/src/impl_arm_linux_or_android.o.d +6 -0
  1071. package/node_modules/cpu-features/build/Release/.deps/Release/obj.target/cpu_features/deps/cpu_features/src/impl_mips_linux_or_android.o.d +6 -0
  1072. package/node_modules/cpu-features/build/Release/.deps/Release/obj.target/cpu_features/deps/cpu_features/src/impl_ppc_linux.o.d +6 -0
  1073. package/node_modules/cpu-features/build/Release/.deps/Release/obj.target/cpu_features/deps/cpu_features/src/impl_x86_freebsd.o.d +6 -0
  1074. package/node_modules/cpu-features/build/Release/.deps/Release/obj.target/cpu_features/deps/cpu_features/src/impl_x86_linux_or_android.o.d +6 -0
  1075. package/node_modules/cpu-features/build/Release/.deps/Release/obj.target/cpu_features/deps/cpu_features/src/impl_x86_macos.o.d +6 -0
  1076. package/node_modules/cpu-features/build/Release/.deps/Release/obj.target/cpu_features/deps/cpu_features/src/impl_x86_windows.o.d +6 -0
  1077. package/node_modules/cpu-features/build/Release/.deps/Release/obj.target/cpu_features/deps/cpu_features/src/stack_line_reader.o.d +12 -0
  1078. package/node_modules/cpu-features/build/Release/.deps/Release/obj.target/cpu_features/deps/cpu_features/src/string_view.o.d +11 -0
  1079. package/node_modules/cpu-features/build/Release/.deps/Release/obj.target/cpufeatures/src/binding.o.d +183 -0
  1080. package/node_modules/cpu-features/build/Release/cpu_features.a +0 -0
  1081. package/node_modules/cpu-features/build/Release/cpufeatures.node +0 -0
  1082. package/node_modules/cpu-features/build/Release/obj.target/cpu_features/deps/cpu_features/src/filesystem.o +0 -0
  1083. package/node_modules/cpu-features/build/Release/obj.target/cpu_features/deps/cpu_features/src/hwcaps.o +0 -0
  1084. package/node_modules/cpu-features/build/Release/obj.target/cpu_features/deps/cpu_features/src/impl_aarch64_linux_or_android.o +0 -0
  1085. package/node_modules/cpu-features/build/Release/obj.target/cpu_features/deps/cpu_features/src/impl_aarch64_macos_or_iphone.o +0 -0
  1086. package/node_modules/cpu-features/build/Release/obj.target/cpu_features/deps/cpu_features/src/impl_aarch64_windows.o +0 -0
  1087. package/node_modules/cpu-features/build/Release/obj.target/cpu_features/deps/cpu_features/src/impl_arm_linux_or_android.o +0 -0
  1088. package/node_modules/cpu-features/build/Release/obj.target/cpu_features/deps/cpu_features/src/impl_mips_linux_or_android.o +0 -0
  1089. package/node_modules/cpu-features/build/Release/obj.target/cpu_features/deps/cpu_features/src/impl_ppc_linux.o +0 -0
  1090. package/node_modules/cpu-features/build/Release/obj.target/cpu_features/deps/cpu_features/src/impl_x86_freebsd.o +0 -0
  1091. package/node_modules/cpu-features/build/Release/obj.target/cpu_features/deps/cpu_features/src/impl_x86_linux_or_android.o +0 -0
  1092. package/node_modules/cpu-features/build/Release/obj.target/cpu_features/deps/cpu_features/src/impl_x86_macos.o +0 -0
  1093. package/node_modules/cpu-features/build/Release/obj.target/cpu_features/deps/cpu_features/src/impl_x86_windows.o +0 -0
  1094. package/node_modules/cpu-features/build/Release/obj.target/cpu_features/deps/cpu_features/src/stack_line_reader.o +0 -0
  1095. package/node_modules/cpu-features/build/Release/obj.target/cpu_features/deps/cpu_features/src/string_view.o +0 -0
  1096. package/node_modules/cpu-features/build/Release/obj.target/cpufeatures/src/binding.o +0 -0
  1097. package/node_modules/cpu-features/build/binding.Makefile +6 -0
  1098. package/node_modules/cpu-features/build/config.gypi +512 -0
  1099. package/node_modules/cpu-features/build/cpufeatures.target.mk +192 -0
  1100. package/node_modules/cpu-features/build/deps/cpu_features/cpu_features.Makefile +6 -0
  1101. package/node_modules/cpu-features/build/deps/cpu_features/cpu_features.target.mk +204 -0
  1102. package/node_modules/cpu-features/build/gyp-mac-tool +766 -0
  1103. package/node_modules/cpu-features/buildcheck.gypi +17 -0
  1104. package/node_modules/cpu-features/buildcheck.js +32 -0
  1105. package/node_modules/cpu-features/deps/cpu_features/.clang-format +4 -0
  1106. package/node_modules/cpu-features/deps/cpu_features/.dockerignore +31 -0
  1107. package/node_modules/cpu-features/deps/cpu_features/.github/workflows/Dockerfile +5 -0
  1108. package/node_modules/cpu-features/deps/cpu_features/.github/workflows/aarch64_linux_cmake.yml +30 -0
  1109. package/node_modules/cpu-features/deps/cpu_features/.github/workflows/amd64_freebsd_cmake.yml +22 -0
  1110. package/node_modules/cpu-features/deps/cpu_features/.github/workflows/amd64_linux_bazel.yml +26 -0
  1111. package/node_modules/cpu-features/deps/cpu_features/.github/workflows/amd64_linux_cmake.yml +31 -0
  1112. package/node_modules/cpu-features/deps/cpu_features/.github/workflows/amd64_macos_cmake.yml +43 -0
  1113. package/node_modules/cpu-features/deps/cpu_features/.github/workflows/amd64_windows_cmake.yml +25 -0
  1114. package/node_modules/cpu-features/deps/cpu_features/.github/workflows/arm_linux_cmake.yml +31 -0
  1115. package/node_modules/cpu-features/deps/cpu_features/.github/workflows/clang_format.yml +24 -0
  1116. package/node_modules/cpu-features/deps/cpu_features/.github/workflows/mips_linux_cmake.yml +30 -0
  1117. package/node_modules/cpu-features/deps/cpu_features/.github/workflows/power_linux_cmake.yml +29 -0
  1118. package/node_modules/cpu-features/deps/cpu_features/.github/workflows/riscv_linux_cmake.yml +28 -0
  1119. package/node_modules/cpu-features/deps/cpu_features/.github/workflows/s390x_linux_cmake.yml +27 -0
  1120. package/node_modules/cpu-features/deps/cpu_features/.grenrc.yml +21 -0
  1121. package/node_modules/cpu-features/deps/cpu_features/BUILD.bazel +329 -0
  1122. package/node_modules/cpu-features/deps/cpu_features/CMakeLists.txt +261 -0
  1123. package/node_modules/cpu-features/deps/cpu_features/CONTRIBUTING.md +23 -0
  1124. package/node_modules/cpu-features/deps/cpu_features/LICENSE +230 -0
  1125. package/node_modules/cpu-features/deps/cpu_features/README.md +272 -0
  1126. package/node_modules/cpu-features/deps/cpu_features/WORKSPACE +19 -0
  1127. package/node_modules/cpu-features/deps/cpu_features/bazel/ci/README.md +5 -0
  1128. package/node_modules/cpu-features/deps/cpu_features/bazel/platforms.bzl +11 -0
  1129. package/node_modules/cpu-features/deps/cpu_features/cmake/CpuFeaturesConfig.cmake.in +3 -0
  1130. package/node_modules/cpu-features/deps/cpu_features/cmake/CpuFeaturesNdkCompatConfig.cmake.in +3 -0
  1131. package/node_modules/cpu-features/deps/cpu_features/cmake/README.md +30 -0
  1132. package/node_modules/cpu-features/deps/cpu_features/cmake/ci/Makefile +252 -0
  1133. package/node_modules/cpu-features/deps/cpu_features/cmake/ci/README.md +40 -0
  1134. package/node_modules/cpu-features/deps/cpu_features/cmake/ci/doc/docker.dot +64 -0
  1135. package/node_modules/cpu-features/deps/cpu_features/cmake/ci/doc/docker.svg +312 -0
  1136. package/node_modules/cpu-features/deps/cpu_features/cmake/ci/doc/generate_image.sh +7 -0
  1137. package/node_modules/cpu-features/deps/cpu_features/cmake/ci/docker/amd64/Dockerfile +48 -0
  1138. package/node_modules/cpu-features/deps/cpu_features/cmake/ci/docker/toolchain/Dockerfile +34 -0
  1139. package/node_modules/cpu-features/deps/cpu_features/cmake/ci/sample/CMakeLists.txt +22 -0
  1140. package/node_modules/cpu-features/deps/cpu_features/cmake/ci/sample/main.cpp +11 -0
  1141. package/node_modules/cpu-features/deps/cpu_features/cmake/ci/vagrant/freebsd/Vagrantfile +107 -0
  1142. package/node_modules/cpu-features/deps/cpu_features/cmake/googletest.CMakeLists.txt.in +15 -0
  1143. package/node_modules/cpu-features/deps/cpu_features/cpu_features.gyp +105 -0
  1144. package/node_modules/cpu-features/deps/cpu_features/include/cpu_features_cache_info.h +54 -0
  1145. package/node_modules/cpu-features/deps/cpu_features/include/cpu_features_macros.h +384 -0
  1146. package/node_modules/cpu-features/deps/cpu_features/include/cpuinfo_aarch64.h +259 -0
  1147. package/node_modules/cpu-features/deps/cpu_features/include/cpuinfo_arm.h +121 -0
  1148. package/node_modules/cpu-features/deps/cpu_features/include/cpuinfo_mips.h +74 -0
  1149. package/node_modules/cpu-features/deps/cpu_features/include/cpuinfo_ppc.h +149 -0
  1150. package/node_modules/cpu-features/deps/cpu_features/include/cpuinfo_riscv.h +72 -0
  1151. package/node_modules/cpu-features/deps/cpu_features/include/cpuinfo_s390x.h +108 -0
  1152. package/node_modules/cpu-features/deps/cpu_features/include/cpuinfo_x86.h +288 -0
  1153. package/node_modules/cpu-features/deps/cpu_features/include/internal/bit_utils.h +40 -0
  1154. package/node_modules/cpu-features/deps/cpu_features/include/internal/cpuid_x86.h +37 -0
  1155. package/node_modules/cpu-features/deps/cpu_features/include/internal/filesystem.h +39 -0
  1156. package/node_modules/cpu-features/deps/cpu_features/include/internal/hwcaps.h +240 -0
  1157. package/node_modules/cpu-features/deps/cpu_features/include/internal/stack_line_reader.h +49 -0
  1158. package/node_modules/cpu-features/deps/cpu_features/include/internal/string_view.h +110 -0
  1159. package/node_modules/cpu-features/deps/cpu_features/include/internal/windows_utils.h +70 -0
  1160. package/node_modules/cpu-features/deps/cpu_features/ndk_compat/CMakeLists.txt +60 -0
  1161. package/node_modules/cpu-features/deps/cpu_features/ndk_compat/README.md +4 -0
  1162. package/node_modules/cpu-features/deps/cpu_features/ndk_compat/cpu-features.c +205 -0
  1163. package/node_modules/cpu-features/deps/cpu_features/ndk_compat/cpu-features.h +320 -0
  1164. package/node_modules/cpu-features/deps/cpu_features/ndk_compat/ndk-compat-test.c +12 -0
  1165. package/node_modules/cpu-features/deps/cpu_features/patches/0001-Add-Apple-Silicon-Support.patch +456 -0
  1166. package/node_modules/cpu-features/deps/cpu_features/scripts/generate_badges.d +165 -0
  1167. package/node_modules/cpu-features/deps/cpu_features/scripts/make_release.sh +75 -0
  1168. package/node_modules/cpu-features/deps/cpu_features/scripts/run_integration.sh +490 -0
  1169. package/node_modules/cpu-features/deps/cpu_features/scripts/test_integration.sh +79 -0
  1170. package/node_modules/cpu-features/deps/cpu_features/src/copy.inl +19 -0
  1171. package/node_modules/cpu-features/deps/cpu_features/src/define_introspection.inl +86 -0
  1172. package/node_modules/cpu-features/deps/cpu_features/src/define_introspection_and_hwcaps.inl +26 -0
  1173. package/node_modules/cpu-features/deps/cpu_features/src/equals.inl +22 -0
  1174. package/node_modules/cpu-features/deps/cpu_features/src/filesystem.c +62 -0
  1175. package/node_modules/cpu-features/deps/cpu_features/src/hwcaps.c +169 -0
  1176. package/node_modules/cpu-features/deps/cpu_features/src/impl_aarch64__base_implementation.inl +88 -0
  1177. package/node_modules/cpu-features/deps/cpu_features/src/impl_aarch64_linux_or_android.c +79 -0
  1178. package/node_modules/cpu-features/deps/cpu_features/src/impl_aarch64_macos_or_iphone.c +82 -0
  1179. package/node_modules/cpu-features/deps/cpu_features/src/impl_aarch64_windows.c +138 -0
  1180. package/node_modules/cpu-features/deps/cpu_features/src/impl_arm_linux_or_android.c +212 -0
  1181. package/node_modules/cpu-features/deps/cpu_features/src/impl_mips_linux_or_android.c +93 -0
  1182. package/node_modules/cpu-features/deps/cpu_features/src/impl_ppc_linux.c +163 -0
  1183. package/node_modules/cpu-features/deps/cpu_features/src/impl_riscv_linux.c +111 -0
  1184. package/node_modules/cpu-features/deps/cpu_features/src/impl_s390x_linux.c +120 -0
  1185. package/node_modules/cpu-features/deps/cpu_features/src/impl_x86__base_implementation.inl +2055 -0
  1186. package/node_modules/cpu-features/deps/cpu_features/src/impl_x86_freebsd.c +68 -0
  1187. package/node_modules/cpu-features/deps/cpu_features/src/impl_x86_linux_or_android.c +58 -0
  1188. package/node_modules/cpu-features/deps/cpu_features/src/impl_x86_macos.c +57 -0
  1189. package/node_modules/cpu-features/deps/cpu_features/src/impl_x86_windows.c +58 -0
  1190. package/node_modules/cpu-features/deps/cpu_features/src/stack_line_reader.c +132 -0
  1191. package/node_modules/cpu-features/deps/cpu_features/src/string_view.c +192 -0
  1192. package/node_modules/cpu-features/deps/cpu_features/src/utils/list_cpu_features.c +461 -0
  1193. package/node_modules/cpu-features/deps/cpu_features/test/CMakeLists.txt +114 -0
  1194. package/node_modules/cpu-features/deps/cpu_features/test/bit_utils_test.cc +53 -0
  1195. package/node_modules/cpu-features/deps/cpu_features/test/cpuinfo_aarch64_test.cc +396 -0
  1196. package/node_modules/cpu-features/deps/cpu_features/test/cpuinfo_arm_test.cc +384 -0
  1197. package/node_modules/cpu-features/deps/cpu_features/test/cpuinfo_mips_test.cc +176 -0
  1198. package/node_modules/cpu-features/deps/cpu_features/test/cpuinfo_ppc_test.cc +131 -0
  1199. package/node_modules/cpu-features/deps/cpu_features/test/cpuinfo_riscv_test.cc +180 -0
  1200. package/node_modules/cpu-features/deps/cpu_features/test/cpuinfo_s390x_test.cc +82 -0
  1201. package/node_modules/cpu-features/deps/cpu_features/test/cpuinfo_x86_test.cc +1729 -0
  1202. package/node_modules/cpu-features/deps/cpu_features/test/filesystem_for_testing.cc +103 -0
  1203. package/node_modules/cpu-features/deps/cpu_features/test/filesystem_for_testing.h +61 -0
  1204. package/node_modules/cpu-features/deps/cpu_features/test/hwcaps_for_testing.cc +52 -0
  1205. package/node_modules/cpu-features/deps/cpu_features/test/hwcaps_for_testing.h +31 -0
  1206. package/node_modules/cpu-features/deps/cpu_features/test/stack_line_reader_test.cc +132 -0
  1207. package/node_modules/cpu-features/deps/cpu_features/test/string_view_test.cc +202 -0
  1208. package/node_modules/cpu-features/lib/index.js +5 -0
  1209. package/node_modules/cpu-features/package.json +40 -0
  1210. package/node_modules/cpu-features/src/binding.cc +151 -0
  1211. package/node_modules/cpu-features/test/test.js +12 -0
  1212. package/node_modules/debug/LICENSE +20 -0
  1213. package/node_modules/debug/README.md +481 -0
  1214. package/node_modules/debug/package.json +64 -0
  1215. package/node_modules/debug/src/browser.js +272 -0
  1216. package/node_modules/debug/src/common.js +292 -0
  1217. package/node_modules/debug/src/index.js +10 -0
  1218. package/node_modules/debug/src/node.js +263 -0
  1219. package/node_modules/docker-modem/.eslintrc +35 -0
  1220. package/node_modules/docker-modem/.github/FUNDING.yml +1 -0
  1221. package/node_modules/docker-modem/.github/workflows/main.yml +63 -0
  1222. package/node_modules/docker-modem/.travis.yml +36 -0
  1223. package/node_modules/docker-modem/.vscode/launch.json +22 -0
  1224. package/node_modules/docker-modem/LICENSE +201 -0
  1225. package/node_modules/docker-modem/README.md +64 -0
  1226. package/node_modules/docker-modem/lib/http.js +87 -0
  1227. package/node_modules/docker-modem/lib/http_duplex.js +55 -0
  1228. package/node_modules/docker-modem/lib/modem.js +577 -0
  1229. package/node_modules/docker-modem/lib/ssh.js +48 -0
  1230. package/node_modules/docker-modem/lib/utils.js +24 -0
  1231. package/node_modules/docker-modem/package.json +32 -0
  1232. package/node_modules/docker-modem/test/modem_test.js +248 -0
  1233. package/node_modules/dockerode/.claude/settings.local.json +8 -0
  1234. package/node_modules/dockerode/.eslintignore +2 -0
  1235. package/node_modules/dockerode/.eslintrc +35 -0
  1236. package/node_modules/dockerode/.github/FUNDING.yml +1 -0
  1237. package/node_modules/dockerode/.github/stale.yml +20 -0
  1238. package/node_modules/dockerode/.github/workflows/main.yml +35 -0
  1239. package/node_modules/dockerode/.travis.yml +24 -0
  1240. package/node_modules/dockerode/.vscode/launch.json +25 -0
  1241. package/node_modules/dockerode/LICENSE +201 -0
  1242. package/node_modules/dockerode/README.md +530 -0
  1243. package/node_modules/dockerode/lib/buildkit.js +242 -0
  1244. package/node_modules/dockerode/lib/config.js +135 -0
  1245. package/node_modules/dockerode/lib/container.js +1085 -0
  1246. package/node_modules/dockerode/lib/docker.js +1903 -0
  1247. package/node_modules/dockerode/lib/exec.js +139 -0
  1248. package/node_modules/dockerode/lib/image.js +279 -0
  1249. package/node_modules/dockerode/lib/network.js +171 -0
  1250. package/node_modules/dockerode/lib/node.js +135 -0
  1251. package/node_modules/dockerode/lib/plugin.js +372 -0
  1252. package/node_modules/dockerode/lib/proto/auth.proto +54 -0
  1253. package/node_modules/dockerode/lib/proto/buildkit_status.proto +81 -0
  1254. package/node_modules/dockerode/lib/secret.js +134 -0
  1255. package/node_modules/dockerode/lib/service.js +183 -0
  1256. package/node_modules/dockerode/lib/session.js +63 -0
  1257. package/node_modules/dockerode/lib/task.js +97 -0
  1258. package/node_modules/dockerode/lib/util.js +106 -0
  1259. package/node_modules/dockerode/lib/volume.js +90 -0
  1260. package/node_modules/dockerode/package.json +40 -0
  1261. package/node_modules/emoji-regex/LICENSE-MIT.txt +20 -0
  1262. package/node_modules/emoji-regex/README.md +73 -0
  1263. package/node_modules/emoji-regex/es2015/index.js +6 -0
  1264. package/node_modules/emoji-regex/es2015/text.js +6 -0
  1265. package/node_modules/emoji-regex/index.d.ts +23 -0
  1266. package/node_modules/emoji-regex/index.js +6 -0
  1267. package/node_modules/emoji-regex/package.json +50 -0
  1268. package/node_modules/emoji-regex/text.js +6 -0
  1269. package/node_modules/end-of-stream/LICENSE +21 -0
  1270. package/node_modules/end-of-stream/README.md +54 -0
  1271. package/node_modules/end-of-stream/index.js +96 -0
  1272. package/node_modules/end-of-stream/package.json +37 -0
  1273. package/node_modules/escalade/dist/index.js +22 -0
  1274. package/node_modules/escalade/dist/index.mjs +22 -0
  1275. package/node_modules/escalade/index.d.mts +11 -0
  1276. package/node_modules/escalade/index.d.ts +15 -0
  1277. package/node_modules/escalade/license +9 -0
  1278. package/node_modules/escalade/package.json +74 -0
  1279. package/node_modules/escalade/readme.md +211 -0
  1280. package/node_modules/escalade/sync/index.d.mts +9 -0
  1281. package/node_modules/escalade/sync/index.d.ts +13 -0
  1282. package/node_modules/escalade/sync/index.js +18 -0
  1283. package/node_modules/escalade/sync/index.mjs +18 -0
  1284. package/node_modules/events-universal/LICENSE +201 -0
  1285. package/node_modules/events-universal/README.md +17 -0
  1286. package/node_modules/events-universal/bare.js +1 -0
  1287. package/node_modules/events-universal/default.js +1 -0
  1288. package/node_modules/events-universal/index.js +1 -0
  1289. package/node_modules/events-universal/package.json +39 -0
  1290. package/node_modules/events-universal/react-native.js +1 -0
  1291. package/node_modules/fast-fifo/LICENSE +21 -0
  1292. package/node_modules/fast-fifo/README.md +78 -0
  1293. package/node_modules/fast-fifo/fixed-size.js +39 -0
  1294. package/node_modules/fast-fifo/index.js +48 -0
  1295. package/node_modules/fast-fifo/package.json +28 -0
  1296. package/node_modules/fs-constants/LICENSE +21 -0
  1297. package/node_modules/fs-constants/README.md +26 -0
  1298. package/node_modules/fs-constants/browser.js +1 -0
  1299. package/node_modules/fs-constants/index.js +1 -0
  1300. package/node_modules/fs-constants/package.json +19 -0
  1301. package/node_modules/fs-extra/LICENSE +15 -0
  1302. package/node_modules/fs-extra/README.md +294 -0
  1303. package/node_modules/fs-extra/lib/copy/copy-sync.js +176 -0
  1304. package/node_modules/fs-extra/lib/copy/copy.js +180 -0
  1305. package/node_modules/fs-extra/lib/copy/index.js +7 -0
  1306. package/node_modules/fs-extra/lib/empty/index.js +39 -0
  1307. package/node_modules/fs-extra/lib/ensure/file.js +66 -0
  1308. package/node_modules/fs-extra/lib/ensure/index.js +23 -0
  1309. package/node_modules/fs-extra/lib/ensure/link.js +64 -0
  1310. package/node_modules/fs-extra/lib/ensure/symlink-paths.js +101 -0
  1311. package/node_modules/fs-extra/lib/ensure/symlink-type.js +34 -0
  1312. package/node_modules/fs-extra/lib/ensure/symlink.js +92 -0
  1313. package/node_modules/fs-extra/lib/esm.mjs +68 -0
  1314. package/node_modules/fs-extra/lib/fs/index.js +146 -0
  1315. package/node_modules/fs-extra/lib/index.js +16 -0
  1316. package/node_modules/fs-extra/lib/json/index.js +16 -0
  1317. package/node_modules/fs-extra/lib/json/jsonfile.js +11 -0
  1318. package/node_modules/fs-extra/lib/json/output-json-sync.js +12 -0
  1319. package/node_modules/fs-extra/lib/json/output-json.js +12 -0
  1320. package/node_modules/fs-extra/lib/mkdirs/index.js +14 -0
  1321. package/node_modules/fs-extra/lib/mkdirs/make-dir.js +27 -0
  1322. package/node_modules/fs-extra/lib/mkdirs/utils.js +21 -0
  1323. package/node_modules/fs-extra/lib/move/index.js +7 -0
  1324. package/node_modules/fs-extra/lib/move/move-sync.js +55 -0
  1325. package/node_modules/fs-extra/lib/move/move.js +59 -0
  1326. package/node_modules/fs-extra/lib/output-file/index.js +31 -0
  1327. package/node_modules/fs-extra/lib/path-exists/index.js +12 -0
  1328. package/node_modules/fs-extra/lib/remove/index.js +17 -0
  1329. package/node_modules/fs-extra/lib/util/async.js +29 -0
  1330. package/node_modules/fs-extra/lib/util/stat.js +159 -0
  1331. package/node_modules/fs-extra/lib/util/utimes.js +36 -0
  1332. package/node_modules/fs-extra/package.json +71 -0
  1333. package/node_modules/get-caller-file/LICENSE.md +6 -0
  1334. package/node_modules/get-caller-file/README.md +41 -0
  1335. package/node_modules/get-caller-file/index.d.ts +2 -0
  1336. package/node_modules/get-caller-file/index.js +22 -0
  1337. package/node_modules/get-caller-file/index.js.map +1 -0
  1338. package/node_modules/get-caller-file/package.json +42 -0
  1339. package/node_modules/graceful-fs/LICENSE +15 -0
  1340. package/node_modules/graceful-fs/README.md +143 -0
  1341. package/node_modules/graceful-fs/clone.js +23 -0
  1342. package/node_modules/graceful-fs/graceful-fs.js +448 -0
  1343. package/node_modules/graceful-fs/legacy-streams.js +118 -0
  1344. package/node_modules/graceful-fs/package.json +53 -0
  1345. package/node_modules/graceful-fs/polyfills.js +355 -0
  1346. package/node_modules/ieee754/LICENSE +11 -0
  1347. package/node_modules/ieee754/README.md +51 -0
  1348. package/node_modules/ieee754/index.d.ts +10 -0
  1349. package/node_modules/ieee754/index.js +85 -0
  1350. package/node_modules/ieee754/package.json +52 -0
  1351. package/node_modules/inherits/LICENSE +16 -0
  1352. package/node_modules/inherits/README.md +42 -0
  1353. package/node_modules/inherits/inherits.js +9 -0
  1354. package/node_modules/inherits/inherits_browser.js +27 -0
  1355. package/node_modules/inherits/package.json +29 -0
  1356. package/node_modules/is-fullwidth-code-point/index.d.ts +17 -0
  1357. package/node_modules/is-fullwidth-code-point/index.js +50 -0
  1358. package/node_modules/is-fullwidth-code-point/license +9 -0
  1359. package/node_modules/is-fullwidth-code-point/package.json +42 -0
  1360. package/node_modules/is-fullwidth-code-point/readme.md +39 -0
  1361. package/node_modules/js-yaml/LICENSE +21 -0
  1362. package/node_modules/js-yaml/README.md +247 -0
  1363. package/node_modules/js-yaml/bin/js-yaml.js +126 -0
  1364. package/node_modules/js-yaml/dist/js-yaml.js +3880 -0
  1365. package/node_modules/js-yaml/dist/js-yaml.min.js +2 -0
  1366. package/node_modules/js-yaml/dist/js-yaml.mjs +3856 -0
  1367. package/node_modules/js-yaml/index.js +47 -0
  1368. package/node_modules/js-yaml/lib/common.js +59 -0
  1369. package/node_modules/js-yaml/lib/dumper.js +965 -0
  1370. package/node_modules/js-yaml/lib/exception.js +55 -0
  1371. package/node_modules/js-yaml/lib/loader.js +1733 -0
  1372. package/node_modules/js-yaml/lib/schema/core.js +11 -0
  1373. package/node_modules/js-yaml/lib/schema/default.js +22 -0
  1374. package/node_modules/js-yaml/lib/schema/failsafe.js +17 -0
  1375. package/node_modules/js-yaml/lib/schema/json.js +19 -0
  1376. package/node_modules/js-yaml/lib/schema.js +121 -0
  1377. package/node_modules/js-yaml/lib/snippet.js +101 -0
  1378. package/node_modules/js-yaml/lib/type/binary.js +125 -0
  1379. package/node_modules/js-yaml/lib/type/bool.js +35 -0
  1380. package/node_modules/js-yaml/lib/type/float.js +97 -0
  1381. package/node_modules/js-yaml/lib/type/int.js +156 -0
  1382. package/node_modules/js-yaml/lib/type/map.js +8 -0
  1383. package/node_modules/js-yaml/lib/type/merge.js +12 -0
  1384. package/node_modules/js-yaml/lib/type/null.js +35 -0
  1385. package/node_modules/js-yaml/lib/type/omap.js +44 -0
  1386. package/node_modules/js-yaml/lib/type/pairs.js +53 -0
  1387. package/node_modules/js-yaml/lib/type/seq.js +8 -0
  1388. package/node_modules/js-yaml/lib/type/set.js +29 -0
  1389. package/node_modules/js-yaml/lib/type/str.js +8 -0
  1390. package/node_modules/js-yaml/lib/type/timestamp.js +88 -0
  1391. package/node_modules/js-yaml/lib/type.js +66 -0
  1392. package/node_modules/js-yaml/package.json +66 -0
  1393. package/node_modules/jsonfile/LICENSE +15 -0
  1394. package/node_modules/jsonfile/README.md +230 -0
  1395. package/node_modules/jsonfile/index.js +88 -0
  1396. package/node_modules/jsonfile/package.json +40 -0
  1397. package/node_modules/jsonfile/utils.js +14 -0
  1398. package/node_modules/lodash.camelcase/LICENSE +47 -0
  1399. package/node_modules/lodash.camelcase/README.md +18 -0
  1400. package/node_modules/lodash.camelcase/index.js +599 -0
  1401. package/node_modules/lodash.camelcase/package.json +17 -0
  1402. package/node_modules/long/LICENSE +202 -0
  1403. package/node_modules/long/README.md +286 -0
  1404. package/node_modules/long/index.d.ts +2 -0
  1405. package/node_modules/long/index.js +1581 -0
  1406. package/node_modules/long/package.json +58 -0
  1407. package/node_modules/long/types.d.ts +474 -0
  1408. package/node_modules/long/umd/index.d.ts +3 -0
  1409. package/node_modules/long/umd/index.js +1622 -0
  1410. package/node_modules/long/umd/package.json +3 -0
  1411. package/node_modules/long/umd/types.d.ts +474 -0
  1412. package/node_modules/mkdirp-classic/LICENSE +21 -0
  1413. package/node_modules/mkdirp-classic/README.md +18 -0
  1414. package/node_modules/mkdirp-classic/index.js +98 -0
  1415. package/node_modules/mkdirp-classic/package.json +18 -0
  1416. package/node_modules/ms/index.js +162 -0
  1417. package/node_modules/ms/license.md +21 -0
  1418. package/node_modules/ms/package.json +38 -0
  1419. package/node_modules/ms/readme.md +59 -0
  1420. package/node_modules/nan/.github/workflows/ci.yml +52 -0
  1421. package/node_modules/nan/.pre-commit-config.yaml +8 -0
  1422. package/node_modules/nan/CHANGELOG.md +599 -0
  1423. package/node_modules/nan/CMakeLists.txt +138 -0
  1424. package/node_modules/nan/LICENSE.md +9 -0
  1425. package/node_modules/nan/README.md +456 -0
  1426. package/node_modules/nan/doc/asyncworker.md +146 -0
  1427. package/node_modules/nan/doc/buffers.md +54 -0
  1428. package/node_modules/nan/doc/callback.md +76 -0
  1429. package/node_modules/nan/doc/converters.md +41 -0
  1430. package/node_modules/nan/doc/errors.md +226 -0
  1431. package/node_modules/nan/doc/json.md +62 -0
  1432. package/node_modules/nan/doc/maybe_types.md +583 -0
  1433. package/node_modules/nan/doc/methods.md +689 -0
  1434. package/node_modules/nan/doc/new.md +147 -0
  1435. package/node_modules/nan/doc/node_misc.md +123 -0
  1436. package/node_modules/nan/doc/object_wrappers.md +263 -0
  1437. package/node_modules/nan/doc/persistent.md +296 -0
  1438. package/node_modules/nan/doc/scopes.md +73 -0
  1439. package/node_modules/nan/doc/script.md +58 -0
  1440. package/node_modules/nan/doc/string_bytes.md +81 -0
  1441. package/node_modules/nan/doc/v8_internals.md +199 -0
  1442. package/node_modules/nan/doc/v8_misc.md +85 -0
  1443. package/node_modules/nan/include_dirs.js +1 -0
  1444. package/node_modules/nan/nan.h +3202 -0
  1445. package/node_modules/nan/nan_callbacks.h +141 -0
  1446. package/node_modules/nan/nan_callbacks_12_inl.h +690 -0
  1447. package/node_modules/nan/nan_callbacks_pre_12_inl.h +524 -0
  1448. package/node_modules/nan/nan_converters.h +72 -0
  1449. package/node_modules/nan/nan_converters_43_inl.h +68 -0
  1450. package/node_modules/nan/nan_converters_pre_43_inl.h +42 -0
  1451. package/node_modules/nan/nan_define_own_property_helper.h +29 -0
  1452. package/node_modules/nan/nan_implementation_12_inl.h +430 -0
  1453. package/node_modules/nan/nan_implementation_pre_12_inl.h +263 -0
  1454. package/node_modules/nan/nan_json.h +166 -0
  1455. package/node_modules/nan/nan_maybe_43_inl.h +360 -0
  1456. package/node_modules/nan/nan_maybe_pre_43_inl.h +268 -0
  1457. package/node_modules/nan/nan_new.h +340 -0
  1458. package/node_modules/nan/nan_object_wrap.h +156 -0
  1459. package/node_modules/nan/nan_persistent_12_inl.h +132 -0
  1460. package/node_modules/nan/nan_persistent_pre_12_inl.h +242 -0
  1461. package/node_modules/nan/nan_private.h +73 -0
  1462. package/node_modules/nan/nan_scriptorigin.h +97 -0
  1463. package/node_modules/nan/nan_string_bytes.h +305 -0
  1464. package/node_modules/nan/nan_typedarray_contents.h +96 -0
  1465. package/node_modules/nan/nan_weak.h +453 -0
  1466. package/node_modules/nan/package.json +38 -0
  1467. package/node_modules/nan/tools/1to2.js +412 -0
  1468. package/node_modules/nan/tools/README.md +14 -0
  1469. package/node_modules/nan/tools/package.json +19 -0
  1470. package/node_modules/once/LICENSE +15 -0
  1471. package/node_modules/once/README.md +79 -0
  1472. package/node_modules/once/once.js +42 -0
  1473. package/node_modules/once/package.json +33 -0
  1474. package/node_modules/protobufjs/LICENSE +39 -0
  1475. package/node_modules/protobufjs/README.md +727 -0
  1476. package/node_modules/protobufjs/dist/light/protobuf.js +7839 -0
  1477. package/node_modules/protobufjs/dist/light/protobuf.js.map +1 -0
  1478. package/node_modules/protobufjs/dist/light/protobuf.min.js +8 -0
  1479. package/node_modules/protobufjs/dist/light/protobuf.min.js.map +1 -0
  1480. package/node_modules/protobufjs/dist/minimal/protobuf.js +2736 -0
  1481. package/node_modules/protobufjs/dist/minimal/protobuf.js.map +1 -0
  1482. package/node_modules/protobufjs/dist/minimal/protobuf.min.js +8 -0
  1483. package/node_modules/protobufjs/dist/minimal/protobuf.min.js.map +1 -0
  1484. package/node_modules/protobufjs/dist/protobuf.js +9643 -0
  1485. package/node_modules/protobufjs/dist/protobuf.js.map +1 -0
  1486. package/node_modules/protobufjs/dist/protobuf.min.js +8 -0
  1487. package/node_modules/protobufjs/dist/protobuf.min.js.map +1 -0
  1488. package/node_modules/protobufjs/ext/debug/README.md +4 -0
  1489. package/node_modules/protobufjs/ext/debug/index.js +71 -0
  1490. package/node_modules/protobufjs/ext/descriptor/README.md +72 -0
  1491. package/node_modules/protobufjs/ext/descriptor/index.d.ts +191 -0
  1492. package/node_modules/protobufjs/ext/descriptor/index.js +1162 -0
  1493. package/node_modules/protobufjs/ext/descriptor/test.js +54 -0
  1494. package/node_modules/protobufjs/google/LICENSE +27 -0
  1495. package/node_modules/protobufjs/google/README.md +1 -0
  1496. package/node_modules/protobufjs/google/api/annotations.json +83 -0
  1497. package/node_modules/protobufjs/google/api/annotations.proto +11 -0
  1498. package/node_modules/protobufjs/google/api/http.json +86 -0
  1499. package/node_modules/protobufjs/google/api/http.proto +31 -0
  1500. package/node_modules/protobufjs/google/protobuf/api.json +118 -0
  1501. package/node_modules/protobufjs/google/protobuf/api.proto +34 -0
  1502. package/node_modules/protobufjs/google/protobuf/descriptor.json +1382 -0
  1503. package/node_modules/protobufjs/google/protobuf/descriptor.proto +535 -0
  1504. package/node_modules/protobufjs/google/protobuf/source_context.json +20 -0
  1505. package/node_modules/protobufjs/google/protobuf/source_context.proto +7 -0
  1506. package/node_modules/protobufjs/google/protobuf/type.json +202 -0
  1507. package/node_modules/protobufjs/google/protobuf/type.proto +89 -0
  1508. package/node_modules/protobufjs/index.d.ts +2799 -0
  1509. package/node_modules/protobufjs/index.js +4 -0
  1510. package/node_modules/protobufjs/light.d.ts +2 -0
  1511. package/node_modules/protobufjs/light.js +4 -0
  1512. package/node_modules/protobufjs/minimal.d.ts +2 -0
  1513. package/node_modules/protobufjs/minimal.js +4 -0
  1514. package/node_modules/protobufjs/package.json +114 -0
  1515. package/node_modules/protobufjs/scripts/postinstall.js +32 -0
  1516. package/node_modules/protobufjs/src/common.js +399 -0
  1517. package/node_modules/protobufjs/src/converter.js +301 -0
  1518. package/node_modules/protobufjs/src/decoder.js +127 -0
  1519. package/node_modules/protobufjs/src/encoder.js +100 -0
  1520. package/node_modules/protobufjs/src/enum.js +223 -0
  1521. package/node_modules/protobufjs/src/field.js +453 -0
  1522. package/node_modules/protobufjs/src/index-light.js +104 -0
  1523. package/node_modules/protobufjs/src/index-minimal.js +36 -0
  1524. package/node_modules/protobufjs/src/index.js +12 -0
  1525. package/node_modules/protobufjs/src/mapfield.js +126 -0
  1526. package/node_modules/protobufjs/src/message.js +143 -0
  1527. package/node_modules/protobufjs/src/method.js +160 -0
  1528. package/node_modules/protobufjs/src/namespace.js +546 -0
  1529. package/node_modules/protobufjs/src/object.js +378 -0
  1530. package/node_modules/protobufjs/src/oneof.js +222 -0
  1531. package/node_modules/protobufjs/src/parse.js +969 -0
  1532. package/node_modules/protobufjs/src/reader.js +416 -0
  1533. package/node_modules/protobufjs/src/reader_buffer.js +51 -0
  1534. package/node_modules/protobufjs/src/root.js +404 -0
  1535. package/node_modules/protobufjs/src/roots.js +18 -0
  1536. package/node_modules/protobufjs/src/rpc/service.js +142 -0
  1537. package/node_modules/protobufjs/src/rpc.js +36 -0
  1538. package/node_modules/protobufjs/src/service.js +189 -0
  1539. package/node_modules/protobufjs/src/tokenize.js +416 -0
  1540. package/node_modules/protobufjs/src/type.js +615 -0
  1541. package/node_modules/protobufjs/src/types.js +196 -0
  1542. package/node_modules/protobufjs/src/typescript.jsdoc +15 -0
  1543. package/node_modules/protobufjs/src/util/longbits.js +200 -0
  1544. package/node_modules/protobufjs/src/util/minimal.js +438 -0
  1545. package/node_modules/protobufjs/src/util.js +215 -0
  1546. package/node_modules/protobufjs/src/verifier.js +177 -0
  1547. package/node_modules/protobufjs/src/wrappers.js +102 -0
  1548. package/node_modules/protobufjs/src/writer.js +465 -0
  1549. package/node_modules/protobufjs/src/writer_buffer.js +85 -0
  1550. package/node_modules/protobufjs/tsconfig.json +8 -0
  1551. package/node_modules/pump/.github/FUNDING.yml +2 -0
  1552. package/node_modules/pump/.travis.yml +5 -0
  1553. package/node_modules/pump/LICENSE +21 -0
  1554. package/node_modules/pump/README.md +74 -0
  1555. package/node_modules/pump/SECURITY.md +5 -0
  1556. package/node_modules/pump/empty.js +1 -0
  1557. package/node_modules/pump/index.js +86 -0
  1558. package/node_modules/pump/package.json +30 -0
  1559. package/node_modules/pump/test-browser.js +66 -0
  1560. package/node_modules/pump/test-node.js +53 -0
  1561. package/node_modules/readable-stream/CONTRIBUTING.md +38 -0
  1562. package/node_modules/readable-stream/GOVERNANCE.md +136 -0
  1563. package/node_modules/readable-stream/LICENSE +47 -0
  1564. package/node_modules/readable-stream/README.md +106 -0
  1565. package/node_modules/readable-stream/errors-browser.js +127 -0
  1566. package/node_modules/readable-stream/errors.js +116 -0
  1567. package/node_modules/readable-stream/experimentalWarning.js +17 -0
  1568. package/node_modules/readable-stream/lib/_stream_duplex.js +126 -0
  1569. package/node_modules/readable-stream/lib/_stream_passthrough.js +37 -0
  1570. package/node_modules/readable-stream/lib/_stream_readable.js +1027 -0
  1571. package/node_modules/readable-stream/lib/_stream_transform.js +190 -0
  1572. package/node_modules/readable-stream/lib/_stream_writable.js +641 -0
  1573. package/node_modules/readable-stream/lib/internal/streams/async_iterator.js +180 -0
  1574. package/node_modules/readable-stream/lib/internal/streams/buffer_list.js +183 -0
  1575. package/node_modules/readable-stream/lib/internal/streams/destroy.js +96 -0
  1576. package/node_modules/readable-stream/lib/internal/streams/end-of-stream.js +86 -0
  1577. package/node_modules/readable-stream/lib/internal/streams/from-browser.js +3 -0
  1578. package/node_modules/readable-stream/lib/internal/streams/from.js +52 -0
  1579. package/node_modules/readable-stream/lib/internal/streams/pipeline.js +86 -0
  1580. package/node_modules/readable-stream/lib/internal/streams/state.js +22 -0
  1581. package/node_modules/readable-stream/lib/internal/streams/stream-browser.js +1 -0
  1582. package/node_modules/readable-stream/lib/internal/streams/stream.js +1 -0
  1583. package/node_modules/readable-stream/package.json +68 -0
  1584. package/node_modules/readable-stream/readable-browser.js +9 -0
  1585. package/node_modules/readable-stream/readable.js +16 -0
  1586. package/node_modules/require-directory/.jshintrc +67 -0
  1587. package/node_modules/require-directory/.npmignore +1 -0
  1588. package/node_modules/require-directory/.travis.yml +3 -0
  1589. package/node_modules/require-directory/LICENSE +22 -0
  1590. package/node_modules/require-directory/README.markdown +184 -0
  1591. package/node_modules/require-directory/index.js +86 -0
  1592. package/node_modules/require-directory/package.json +40 -0
  1593. package/node_modules/safe-buffer/LICENSE +21 -0
  1594. package/node_modules/safe-buffer/README.md +584 -0
  1595. package/node_modules/safe-buffer/index.d.ts +187 -0
  1596. package/node_modules/safe-buffer/index.js +65 -0
  1597. package/node_modules/safe-buffer/package.json +51 -0
  1598. package/node_modules/safer-buffer/LICENSE +21 -0
  1599. package/node_modules/safer-buffer/Porting-Buffer.md +268 -0
  1600. package/node_modules/safer-buffer/Readme.md +156 -0
  1601. package/node_modules/safer-buffer/dangerous.js +58 -0
  1602. package/node_modules/safer-buffer/package.json +34 -0
  1603. package/node_modules/safer-buffer/safer.js +77 -0
  1604. package/node_modules/safer-buffer/tests.js +406 -0
  1605. package/node_modules/skillgrade/LICENSE +21 -0
  1606. package/node_modules/skillgrade/README.md +253 -0
  1607. package/node_modules/skillgrade/bin/skillgrade.js +2 -0
  1608. package/node_modules/skillgrade/dist/agents/claude.d.ts +5 -0
  1609. package/node_modules/skillgrade/dist/agents/claude.js +19 -0
  1610. package/node_modules/skillgrade/dist/agents/codex.d.ts +5 -0
  1611. package/node_modules/skillgrade/dist/agents/codex.js +19 -0
  1612. package/node_modules/skillgrade/dist/agents/gemini.d.ts +5 -0
  1613. package/node_modules/skillgrade/dist/agents/gemini.js +19 -0
  1614. package/node_modules/skillgrade/dist/agents/registry.d.ts +14 -0
  1615. package/node_modules/skillgrade/dist/agents/registry.js +27 -0
  1616. package/node_modules/skillgrade/dist/analytics/engine.d.ts +19 -0
  1617. package/node_modules/skillgrade/dist/analytics/engine.js +105 -0
  1618. package/node_modules/skillgrade/dist/commands/init.d.ts +4 -0
  1619. package/node_modules/skillgrade/dist/commands/init.js +335 -0
  1620. package/node_modules/skillgrade/dist/commands/preview.d.ts +2 -0
  1621. package/node_modules/skillgrade/dist/commands/preview.js +56 -0
  1622. package/node_modules/skillgrade/dist/commands/run.d.ts +16 -0
  1623. package/node_modules/skillgrade/dist/commands/run.js +302 -0
  1624. package/node_modules/skillgrade/dist/core/config.d.ts +10 -0
  1625. package/node_modules/skillgrade/dist/core/config.js +213 -0
  1626. package/node_modules/skillgrade/dist/core/config.types.d.ts +88 -0
  1627. package/node_modules/skillgrade/dist/core/config.types.js +9 -0
  1628. package/node_modules/skillgrade/dist/core/skills.d.ts +15 -0
  1629. package/node_modules/skillgrade/dist/core/skills.js +103 -0
  1630. package/node_modules/skillgrade/dist/evalRunner.d.ts +26 -0
  1631. package/node_modules/skillgrade/dist/evalRunner.js +316 -0
  1632. package/node_modules/skillgrade/dist/graders/index.d.ts +30 -0
  1633. package/node_modules/skillgrade/dist/graders/index.js +248 -0
  1634. package/node_modules/skillgrade/dist/providers/docker.d.ts +32 -0
  1635. package/node_modules/skillgrade/dist/providers/docker.js +255 -0
  1636. package/node_modules/skillgrade/dist/providers/local.d.ts +7 -0
  1637. package/node_modules/skillgrade/dist/providers/local.js +86 -0
  1638. package/node_modules/skillgrade/dist/reporters/browser.d.ts +2 -0
  1639. package/node_modules/skillgrade/dist/reporters/browser.js +90 -0
  1640. package/node_modules/skillgrade/dist/reporters/cli.d.ts +2 -0
  1641. package/node_modules/skillgrade/dist/reporters/cli.js +116 -0
  1642. package/node_modules/skillgrade/dist/skillgrade.d.ts +20 -0
  1643. package/node_modules/skillgrade/dist/skillgrade.js +179 -0
  1644. package/node_modules/skillgrade/dist/types.d.ts +72 -0
  1645. package/node_modules/skillgrade/dist/types.js +7 -0
  1646. package/node_modules/skillgrade/dist/utils/cli.d.ts +56 -0
  1647. package/node_modules/skillgrade/dist/utils/cli.js +141 -0
  1648. package/node_modules/skillgrade/dist/utils/env.d.ts +9 -0
  1649. package/node_modules/skillgrade/dist/utils/env.js +30 -0
  1650. package/node_modules/skillgrade/dist/viewer.html +791 -0
  1651. package/node_modules/skillgrade/package.json +69 -0
  1652. package/node_modules/skillgrade/templates/eval.yaml.template +61 -0
  1653. package/node_modules/split-ca/.gitlab-ci.yml +19 -0
  1654. package/node_modules/split-ca/.npmignore +1 -0
  1655. package/node_modules/split-ca/Makefile +4 -0
  1656. package/node_modules/split-ca/README.md +51 -0
  1657. package/node_modules/split-ca/index.js +27 -0
  1658. package/node_modules/split-ca/package.json +38 -0
  1659. package/node_modules/split-ca/test/certs/empty.ca +0 -0
  1660. package/node_modules/split-ca/test/certs/garbage.ca +16 -0
  1661. package/node_modules/split-ca/test/certs/split0.ca +18 -0
  1662. package/node_modules/split-ca/test/certs/split1.ca +13 -0
  1663. package/node_modules/split-ca/test/certs/test-chain.bundle +31 -0
  1664. package/node_modules/split-ca/test/splitCa.test.js +45 -0
  1665. package/node_modules/ssh2/.eslintignore +4 -0
  1666. package/node_modules/ssh2/.eslintrc.js +5 -0
  1667. package/node_modules/ssh2/.github/workflows/ci.yml +110 -0
  1668. package/node_modules/ssh2/.github/workflows/lint.yml +27 -0
  1669. package/node_modules/ssh2/LICENSE +19 -0
  1670. package/node_modules/ssh2/README.md +1529 -0
  1671. package/node_modules/ssh2/SFTP.md +413 -0
  1672. package/node_modules/ssh2/examples/server-chat.js +238 -0
  1673. package/node_modules/ssh2/examples/sftp-server-download-only.js +134 -0
  1674. package/node_modules/ssh2/install.js +27 -0
  1675. package/node_modules/ssh2/lib/Channel.js +295 -0
  1676. package/node_modules/ssh2/lib/agent.js +1123 -0
  1677. package/node_modules/ssh2/lib/client.js +2176 -0
  1678. package/node_modules/ssh2/lib/http-agents.js +84 -0
  1679. package/node_modules/ssh2/lib/index.js +44 -0
  1680. package/node_modules/ssh2/lib/keygen.js +582 -0
  1681. package/node_modules/ssh2/lib/protocol/Protocol.js +2136 -0
  1682. package/node_modules/ssh2/lib/protocol/SFTP.js +4052 -0
  1683. package/node_modules/ssh2/lib/protocol/constants.js +356 -0
  1684. package/node_modules/ssh2/lib/protocol/crypto/binding.gyp +23 -0
  1685. package/node_modules/ssh2/lib/protocol/crypto/build/Makefile +347 -0
  1686. package/node_modules/ssh2/lib/protocol/crypto/build/Release/.deps/Release/obj.target/sshcrypto/src/binding.o.d +273 -0
  1687. package/node_modules/ssh2/lib/protocol/crypto/build/Release/.deps/Release/sshcrypto.node.d +1 -0
  1688. package/node_modules/ssh2/lib/protocol/crypto/build/Release/obj.target/sshcrypto/src/binding.o +0 -0
  1689. package/node_modules/ssh2/lib/protocol/crypto/build/Release/sshcrypto.node +0 -0
  1690. package/node_modules/ssh2/lib/protocol/crypto/build/binding.Makefile +6 -0
  1691. package/node_modules/ssh2/lib/protocol/crypto/build/gyp-mac-tool +766 -0
  1692. package/node_modules/ssh2/lib/protocol/crypto/build/sshcrypto.target.mk +187 -0
  1693. package/node_modules/ssh2/lib/protocol/crypto/poly1305.js +43 -0
  1694. package/node_modules/ssh2/lib/protocol/crypto/src/binding.cc +2300 -0
  1695. package/node_modules/ssh2/lib/protocol/crypto.js +1602 -0
  1696. package/node_modules/ssh2/lib/protocol/handlers.js +16 -0
  1697. package/node_modules/ssh2/lib/protocol/handlers.misc.js +1285 -0
  1698. package/node_modules/ssh2/lib/protocol/kex.js +1908 -0
  1699. package/node_modules/ssh2/lib/protocol/keyParser.js +1484 -0
  1700. package/node_modules/ssh2/lib/protocol/node-fs-compat.js +115 -0
  1701. package/node_modules/ssh2/lib/protocol/utils.js +356 -0
  1702. package/node_modules/ssh2/lib/protocol/zlib.js +255 -0
  1703. package/node_modules/ssh2/lib/server.js +1380 -0
  1704. package/node_modules/ssh2/lib/utils.js +336 -0
  1705. package/node_modules/ssh2/package.json +49 -0
  1706. package/node_modules/ssh2/test/common.js +316 -0
  1707. package/node_modules/ssh2/test/fixtures/bad_rsa_private_key +26 -0
  1708. package/node_modules/ssh2/test/fixtures/https_cert.pem +33 -0
  1709. package/node_modules/ssh2/test/fixtures/https_key.pem +52 -0
  1710. package/node_modules/ssh2/test/fixtures/id_dsa +12 -0
  1711. package/node_modules/ssh2/test/fixtures/id_ecdsa +5 -0
  1712. package/node_modules/ssh2/test/fixtures/id_rsa +15 -0
  1713. package/node_modules/ssh2/test/fixtures/id_rsa.ppk +26 -0
  1714. package/node_modules/ssh2/test/fixtures/id_rsa_enc +30 -0
  1715. package/node_modules/ssh2/test/fixtures/keyParser/openssh_new_dsa +21 -0
  1716. package/node_modules/ssh2/test/fixtures/keyParser/openssh_new_dsa.pub +1 -0
  1717. package/node_modules/ssh2/test/fixtures/keyParser/openssh_new_dsa.pub.result +7 -0
  1718. package/node_modules/ssh2/test/fixtures/keyParser/openssh_new_dsa.result +7 -0
  1719. package/node_modules/ssh2/test/fixtures/keyParser/openssh_new_dsa_enc +22 -0
  1720. package/node_modules/ssh2/test/fixtures/keyParser/openssh_new_dsa_enc.pub +1 -0
  1721. package/node_modules/ssh2/test/fixtures/keyParser/openssh_new_dsa_enc.pub.result +7 -0
  1722. package/node_modules/ssh2/test/fixtures/keyParser/openssh_new_dsa_enc.result +7 -0
  1723. package/node_modules/ssh2/test/fixtures/keyParser/openssh_new_dsa_enc_gcm +23 -0
  1724. package/node_modules/ssh2/test/fixtures/keyParser/openssh_new_dsa_enc_gcm.pub +1 -0
  1725. package/node_modules/ssh2/test/fixtures/keyParser/openssh_new_dsa_enc_gcm.pub.result +7 -0
  1726. package/node_modules/ssh2/test/fixtures/keyParser/openssh_new_dsa_enc_gcm.result +7 -0
  1727. package/node_modules/ssh2/test/fixtures/keyParser/openssh_new_ecdsa +9 -0
  1728. package/node_modules/ssh2/test/fixtures/keyParser/openssh_new_ecdsa.pub +1 -0
  1729. package/node_modules/ssh2/test/fixtures/keyParser/openssh_new_ecdsa.pub.result +7 -0
  1730. package/node_modules/ssh2/test/fixtures/keyParser/openssh_new_ecdsa.result +7 -0
  1731. package/node_modules/ssh2/test/fixtures/keyParser/openssh_new_ecdsa_enc +10 -0
  1732. package/node_modules/ssh2/test/fixtures/keyParser/openssh_new_ecdsa_enc.pub +1 -0
  1733. package/node_modules/ssh2/test/fixtures/keyParser/openssh_new_ecdsa_enc.pub.result +8 -0
  1734. package/node_modules/ssh2/test/fixtures/keyParser/openssh_new_ecdsa_enc.result +7 -0
  1735. package/node_modules/ssh2/test/fixtures/keyParser/openssh_new_ecdsa_enc_gcm +10 -0
  1736. package/node_modules/ssh2/test/fixtures/keyParser/openssh_new_ecdsa_enc_gcm.pub +1 -0
  1737. package/node_modules/ssh2/test/fixtures/keyParser/openssh_new_ecdsa_enc_gcm.pub.result +8 -0
  1738. package/node_modules/ssh2/test/fixtures/keyParser/openssh_new_ecdsa_enc_gcm.result +7 -0
  1739. package/node_modules/ssh2/test/fixtures/keyParser/openssh_new_ed25519 +7 -0
  1740. package/node_modules/ssh2/test/fixtures/keyParser/openssh_new_ed25519.pub +1 -0
  1741. package/node_modules/ssh2/test/fixtures/keyParser/openssh_new_ed25519.pub.result +7 -0
  1742. package/node_modules/ssh2/test/fixtures/keyParser/openssh_new_ed25519.result +7 -0
  1743. package/node_modules/ssh2/test/fixtures/keyParser/openssh_new_rsa +27 -0
  1744. package/node_modules/ssh2/test/fixtures/keyParser/openssh_new_rsa.pub +1 -0
  1745. package/node_modules/ssh2/test/fixtures/keyParser/openssh_new_rsa.pub.result +7 -0
  1746. package/node_modules/ssh2/test/fixtures/keyParser/openssh_new_rsa.result +7 -0
  1747. package/node_modules/ssh2/test/fixtures/keyParser/openssh_new_rsa_enc +28 -0
  1748. package/node_modules/ssh2/test/fixtures/keyParser/openssh_new_rsa_enc.pub +1 -0
  1749. package/node_modules/ssh2/test/fixtures/keyParser/openssh_new_rsa_enc.pub.result +8 -0
  1750. package/node_modules/ssh2/test/fixtures/keyParser/openssh_new_rsa_enc.result +7 -0
  1751. package/node_modules/ssh2/test/fixtures/keyParser/openssh_new_rsa_enc_gcm +29 -0
  1752. package/node_modules/ssh2/test/fixtures/keyParser/openssh_new_rsa_enc_gcm.pub +1 -0
  1753. package/node_modules/ssh2/test/fixtures/keyParser/openssh_new_rsa_enc_gcm.pub.result +8 -0
  1754. package/node_modules/ssh2/test/fixtures/keyParser/openssh_new_rsa_enc_gcm.result +7 -0
  1755. package/node_modules/ssh2/test/fixtures/keyParser/openssh_old_dsa +12 -0
  1756. package/node_modules/ssh2/test/fixtures/keyParser/openssh_old_dsa.pub +1 -0
  1757. package/node_modules/ssh2/test/fixtures/keyParser/openssh_old_dsa.pub.result +7 -0
  1758. package/node_modules/ssh2/test/fixtures/keyParser/openssh_old_dsa.result +7 -0
  1759. package/node_modules/ssh2/test/fixtures/keyParser/openssh_old_dsa_enc +15 -0
  1760. package/node_modules/ssh2/test/fixtures/keyParser/openssh_old_dsa_enc.pub +1 -0
  1761. package/node_modules/ssh2/test/fixtures/keyParser/openssh_old_dsa_enc.pub.result +8 -0
  1762. package/node_modules/ssh2/test/fixtures/keyParser/openssh_old_dsa_enc.result +7 -0
  1763. package/node_modules/ssh2/test/fixtures/keyParser/openssh_old_ecdsa +5 -0
  1764. package/node_modules/ssh2/test/fixtures/keyParser/openssh_old_ecdsa.pub +1 -0
  1765. package/node_modules/ssh2/test/fixtures/keyParser/openssh_old_ecdsa.pub.result +7 -0
  1766. package/node_modules/ssh2/test/fixtures/keyParser/openssh_old_ecdsa.result +7 -0
  1767. package/node_modules/ssh2/test/fixtures/keyParser/openssh_old_ecdsa_enc +8 -0
  1768. package/node_modules/ssh2/test/fixtures/keyParser/openssh_old_ecdsa_enc.pub +1 -0
  1769. package/node_modules/ssh2/test/fixtures/keyParser/openssh_old_ecdsa_enc.pub.result +8 -0
  1770. package/node_modules/ssh2/test/fixtures/keyParser/openssh_old_ecdsa_enc.result +7 -0
  1771. package/node_modules/ssh2/test/fixtures/keyParser/openssh_old_rsa +27 -0
  1772. package/node_modules/ssh2/test/fixtures/keyParser/openssh_old_rsa.pub +1 -0
  1773. package/node_modules/ssh2/test/fixtures/keyParser/openssh_old_rsa.pub.result +7 -0
  1774. package/node_modules/ssh2/test/fixtures/keyParser/openssh_old_rsa.result +7 -0
  1775. package/node_modules/ssh2/test/fixtures/keyParser/openssh_old_rsa_enc +30 -0
  1776. package/node_modules/ssh2/test/fixtures/keyParser/openssh_old_rsa_enc.pub +1 -0
  1777. package/node_modules/ssh2/test/fixtures/keyParser/openssh_old_rsa_enc.pub.result +8 -0
  1778. package/node_modules/ssh2/test/fixtures/keyParser/openssh_old_rsa_enc.result +7 -0
  1779. package/node_modules/ssh2/test/fixtures/keyParser/openssh_old_rsa_enc_aes256 +54 -0
  1780. package/node_modules/ssh2/test/fixtures/keyParser/openssh_old_rsa_enc_aes256.pub +1 -0
  1781. package/node_modules/ssh2/test/fixtures/keyParser/openssh_old_rsa_enc_aes256.pub.result +6 -0
  1782. package/node_modules/ssh2/test/fixtures/keyParser/openssh_old_rsa_enc_aes256.result +6 -0
  1783. package/node_modules/ssh2/test/fixtures/keyParser/ppk_dsa_enc +17 -0
  1784. package/node_modules/ssh2/test/fixtures/keyParser/ppk_dsa_enc.result +7 -0
  1785. package/node_modules/ssh2/test/fixtures/keyParser/ppk_rsa +26 -0
  1786. package/node_modules/ssh2/test/fixtures/keyParser/ppk_rsa.result +7 -0
  1787. package/node_modules/ssh2/test/fixtures/keyParser/ppk_rsa_enc +18 -0
  1788. package/node_modules/ssh2/test/fixtures/keyParser/ppk_rsa_enc.result +7 -0
  1789. package/node_modules/ssh2/test/fixtures/keyParser/rfc4716_rsa.pub +9 -0
  1790. package/node_modules/ssh2/test/fixtures/keyParser/rfc4716_rsa.pub.result +7 -0
  1791. package/node_modules/ssh2/test/fixtures/keyParser/rfc4716_rsa2.pub +10 -0
  1792. package/node_modules/ssh2/test/fixtures/keyParser/rfc4716_rsa2.pub.result +7 -0
  1793. package/node_modules/ssh2/test/fixtures/keyParser/rfc4716_rsa3.pub +11 -0
  1794. package/node_modules/ssh2/test/fixtures/keyParser/rfc4716_rsa3.pub.result +7 -0
  1795. package/node_modules/ssh2/test/fixtures/keyParser/rfc4716_rsa4.pub +11 -0
  1796. package/node_modules/ssh2/test/fixtures/keyParser/rfc4716_rsa4.pub.result +7 -0
  1797. package/node_modules/ssh2/test/fixtures/keyParser/rfc4716_rsa5.pub +8 -0
  1798. package/node_modules/ssh2/test/fixtures/keyParser/rfc4716_rsa5.pub.result +7 -0
  1799. package/node_modules/ssh2/test/fixtures/keyParser/rfc4716_rsa6.pub +13 -0
  1800. package/node_modules/ssh2/test/fixtures/keyParser/rfc4716_rsa6.pub.result +7 -0
  1801. package/node_modules/ssh2/test/fixtures/openssh_new_rsa +27 -0
  1802. package/node_modules/ssh2/test/fixtures/ssh_host_dsa_key +12 -0
  1803. package/node_modules/ssh2/test/fixtures/ssh_host_ecdsa_key +5 -0
  1804. package/node_modules/ssh2/test/fixtures/ssh_host_rsa_key +15 -0
  1805. package/node_modules/ssh2/test/test-exec.js +578 -0
  1806. package/node_modules/ssh2/test/test-integration-openssh.js +486 -0
  1807. package/node_modules/ssh2/test/test-keygen.js +60 -0
  1808. package/node_modules/ssh2/test/test-misc-client-server.js +1460 -0
  1809. package/node_modules/ssh2/test/test-openssh.js +261 -0
  1810. package/node_modules/ssh2/test/test-protocol-crypto.js +631 -0
  1811. package/node_modules/ssh2/test/test-protocol-keyparser.js +177 -0
  1812. package/node_modules/ssh2/test/test-server-hostkeys.js +138 -0
  1813. package/node_modules/ssh2/test/test-sftp.js +842 -0
  1814. package/node_modules/ssh2/test/test-shell.js +109 -0
  1815. package/node_modules/ssh2/test/test-userauth-agent-openssh.js +110 -0
  1816. package/node_modules/ssh2/test/test-userauth-agent.js +171 -0
  1817. package/node_modules/ssh2/test/test-userauth.js +611 -0
  1818. package/node_modules/ssh2/test/test-worker-imports.js +25 -0
  1819. package/node_modules/ssh2/test/test.js +20 -0
  1820. package/node_modules/ssh2/util/build_pagent.bat +2 -0
  1821. package/node_modules/ssh2/util/pagent.c +88 -0
  1822. package/node_modules/ssh2/util/pagent.exe +0 -0
  1823. package/node_modules/streamx/LICENSE +21 -0
  1824. package/node_modules/streamx/README.md +490 -0
  1825. package/node_modules/streamx/index.js +1232 -0
  1826. package/node_modules/streamx/package.json +36 -0
  1827. package/node_modules/string-width/index.d.ts +29 -0
  1828. package/node_modules/string-width/index.js +47 -0
  1829. package/node_modules/string-width/license +9 -0
  1830. package/node_modules/string-width/package.json +56 -0
  1831. package/node_modules/string-width/readme.md +50 -0
  1832. package/node_modules/string_decoder/LICENSE +48 -0
  1833. package/node_modules/string_decoder/README.md +47 -0
  1834. package/node_modules/string_decoder/lib/string_decoder.js +296 -0
  1835. package/node_modules/string_decoder/package.json +34 -0
  1836. package/node_modules/strip-ansi/index.d.ts +17 -0
  1837. package/node_modules/strip-ansi/index.js +4 -0
  1838. package/node_modules/strip-ansi/license +9 -0
  1839. package/node_modules/strip-ansi/package.json +54 -0
  1840. package/node_modules/strip-ansi/readme.md +46 -0
  1841. package/node_modules/tar-fs/.travis.yml +6 -0
  1842. package/node_modules/tar-fs/LICENSE +21 -0
  1843. package/node_modules/tar-fs/README.md +165 -0
  1844. package/node_modules/tar-fs/index.js +363 -0
  1845. package/node_modules/tar-fs/node_modules/tar-stream/LICENSE +21 -0
  1846. package/node_modules/tar-fs/node_modules/tar-stream/README.md +168 -0
  1847. package/node_modules/tar-fs/node_modules/tar-stream/extract.js +257 -0
  1848. package/node_modules/tar-fs/node_modules/tar-stream/headers.js +295 -0
  1849. package/node_modules/tar-fs/node_modules/tar-stream/index.js +2 -0
  1850. package/node_modules/tar-fs/node_modules/tar-stream/pack.js +255 -0
  1851. package/node_modules/tar-fs/node_modules/tar-stream/package.json +58 -0
  1852. package/node_modules/tar-fs/node_modules/tar-stream/sandbox.js +11 -0
  1853. package/node_modules/tar-fs/package.json +41 -0
  1854. package/node_modules/tar-fs/test/fixtures/a/hello.txt +1 -0
  1855. package/node_modules/tar-fs/test/fixtures/b/a/test.txt +1 -0
  1856. package/node_modules/tar-fs/test/fixtures/d/file1 +0 -0
  1857. package/node_modules/tar-fs/test/fixtures/d/file2 +0 -0
  1858. package/node_modules/tar-fs/test/fixtures/d/sub-dir/file5 +0 -0
  1859. package/node_modules/tar-fs/test/fixtures/d/sub-files/file3 +0 -0
  1860. package/node_modules/tar-fs/test/fixtures/d/sub-files/file4 +0 -0
  1861. package/node_modules/tar-fs/test/fixtures/e/directory/.ignore +0 -0
  1862. package/node_modules/tar-fs/test/fixtures/e/file +0 -0
  1863. package/node_modules/tar-fs/test/fixtures/invalid.tar +0 -0
  1864. package/node_modules/tar-fs/test/index.js +346 -0
  1865. package/node_modules/tar-stream/LICENSE +21 -0
  1866. package/node_modules/tar-stream/README.md +183 -0
  1867. package/node_modules/tar-stream/constants.js +14 -0
  1868. package/node_modules/tar-stream/extract.js +406 -0
  1869. package/node_modules/tar-stream/headers.js +321 -0
  1870. package/node_modules/tar-stream/index.js +2 -0
  1871. package/node_modules/tar-stream/pack.js +287 -0
  1872. package/node_modules/tar-stream/package.json +42 -0
  1873. package/node_modules/teex/LICENSE +21 -0
  1874. package/node_modules/teex/README.md +31 -0
  1875. package/node_modules/teex/example.js +16 -0
  1876. package/node_modules/teex/index.js +52 -0
  1877. package/node_modules/teex/package.json +26 -0
  1878. package/node_modules/teex/test.js +68 -0
  1879. package/node_modules/text-decoder/LICENSE +201 -0
  1880. package/node_modules/text-decoder/README.md +36 -0
  1881. package/node_modules/text-decoder/index.js +64 -0
  1882. package/node_modules/text-decoder/lib/pass-through-decoder.js +19 -0
  1883. package/node_modules/text-decoder/lib/utf8-decoder.js +185 -0
  1884. package/node_modules/text-decoder/package.json +39 -0
  1885. package/node_modules/tweetnacl/.npmignore +4 -0
  1886. package/node_modules/tweetnacl/AUTHORS.md +28 -0
  1887. package/node_modules/tweetnacl/CHANGELOG.md +221 -0
  1888. package/node_modules/tweetnacl/LICENSE +24 -0
  1889. package/node_modules/tweetnacl/PULL_REQUEST_TEMPLATE.md +20 -0
  1890. package/node_modules/tweetnacl/README.md +459 -0
  1891. package/node_modules/tweetnacl/nacl-fast.js +2388 -0
  1892. package/node_modules/tweetnacl/nacl-fast.min.js +2 -0
  1893. package/node_modules/tweetnacl/nacl.d.ts +98 -0
  1894. package/node_modules/tweetnacl/nacl.js +1175 -0
  1895. package/node_modules/tweetnacl/nacl.min.js +1 -0
  1896. package/node_modules/tweetnacl/package.json +58 -0
  1897. package/node_modules/universalify/LICENSE +20 -0
  1898. package/node_modules/universalify/README.md +76 -0
  1899. package/node_modules/universalify/index.js +24 -0
  1900. package/node_modules/universalify/package.json +34 -0
  1901. package/node_modules/util-deprecate/History.md +16 -0
  1902. package/node_modules/util-deprecate/LICENSE +24 -0
  1903. package/node_modules/util-deprecate/README.md +53 -0
  1904. package/node_modules/util-deprecate/browser.js +67 -0
  1905. package/node_modules/util-deprecate/node.js +6 -0
  1906. package/node_modules/util-deprecate/package.json +27 -0
  1907. package/node_modules/uuid/CHANGELOG.md +292 -0
  1908. package/node_modules/uuid/CONTRIBUTING.md +18 -0
  1909. package/node_modules/uuid/LICENSE.md +9 -0
  1910. package/node_modules/uuid/README.md +584 -0
  1911. package/node_modules/uuid/dist/bin/uuid +2 -0
  1912. package/node_modules/uuid/dist/commonjs-browser/index.js +104 -0
  1913. package/node_modules/uuid/dist/commonjs-browser/max.js +7 -0
  1914. package/node_modules/uuid/dist/commonjs-browser/md5.js +200 -0
  1915. package/node_modules/uuid/dist/commonjs-browser/native.js +10 -0
  1916. package/node_modules/uuid/dist/commonjs-browser/nil.js +7 -0
  1917. package/node_modules/uuid/dist/commonjs-browser/parse.js +44 -0
  1918. package/node_modules/uuid/dist/commonjs-browser/regex.js +7 -0
  1919. package/node_modules/uuid/dist/commonjs-browser/rng.js +23 -0
  1920. package/node_modules/uuid/dist/commonjs-browser/sha1.js +82 -0
  1921. package/node_modules/uuid/dist/commonjs-browser/stringify.js +38 -0
  1922. package/node_modules/uuid/dist/commonjs-browser/v1.js +131 -0
  1923. package/node_modules/uuid/dist/commonjs-browser/v1ToV6.js +26 -0
  1924. package/node_modules/uuid/dist/commonjs-browser/v3.js +11 -0
  1925. package/node_modules/uuid/dist/commonjs-browser/v35.js +63 -0
  1926. package/node_modules/uuid/dist/commonjs-browser/v4.js +32 -0
  1927. package/node_modules/uuid/dist/commonjs-browser/v5.js +11 -0
  1928. package/node_modules/uuid/dist/commonjs-browser/v6.js +42 -0
  1929. package/node_modules/uuid/dist/commonjs-browser/v6ToV1.js +26 -0
  1930. package/node_modules/uuid/dist/commonjs-browser/v7.js +152 -0
  1931. package/node_modules/uuid/dist/commonjs-browser/validate.js +12 -0
  1932. package/node_modules/uuid/dist/commonjs-browser/version.js +15 -0
  1933. package/node_modules/uuid/dist/esm-browser/index.js +14 -0
  1934. package/node_modules/uuid/dist/esm-browser/max.js +1 -0
  1935. package/node_modules/uuid/dist/esm-browser/md5.js +194 -0
  1936. package/node_modules/uuid/dist/esm-browser/native.js +4 -0
  1937. package/node_modules/uuid/dist/esm-browser/nil.js +1 -0
  1938. package/node_modules/uuid/dist/esm-browser/parse.js +37 -0
  1939. package/node_modules/uuid/dist/esm-browser/regex.js +1 -0
  1940. package/node_modules/uuid/dist/esm-browser/rng.js +17 -0
  1941. package/node_modules/uuid/dist/esm-browser/sha1.js +76 -0
  1942. package/node_modules/uuid/dist/esm-browser/stringify.js +31 -0
  1943. package/node_modules/uuid/dist/esm-browser/v1.js +125 -0
  1944. package/node_modules/uuid/dist/esm-browser/v1ToV6.js +20 -0
  1945. package/node_modules/uuid/dist/esm-browser/v3.js +4 -0
  1946. package/node_modules/uuid/dist/esm-browser/v35.js +55 -0
  1947. package/node_modules/uuid/dist/esm-browser/v4.js +25 -0
  1948. package/node_modules/uuid/dist/esm-browser/v5.js +4 -0
  1949. package/node_modules/uuid/dist/esm-browser/v6.js +36 -0
  1950. package/node_modules/uuid/dist/esm-browser/v6ToV1.js +20 -0
  1951. package/node_modules/uuid/dist/esm-browser/v7.js +146 -0
  1952. package/node_modules/uuid/dist/esm-browser/validate.js +5 -0
  1953. package/node_modules/uuid/dist/esm-browser/version.js +8 -0
  1954. package/node_modules/uuid/dist/esm-node/index.js +14 -0
  1955. package/node_modules/uuid/dist/esm-node/max.js +1 -0
  1956. package/node_modules/uuid/dist/esm-node/md5.js +10 -0
  1957. package/node_modules/uuid/dist/esm-node/native.js +4 -0
  1958. package/node_modules/uuid/dist/esm-node/nil.js +1 -0
  1959. package/node_modules/uuid/dist/esm-node/parse.js +37 -0
  1960. package/node_modules/uuid/dist/esm-node/regex.js +1 -0
  1961. package/node_modules/uuid/dist/esm-node/rng.js +10 -0
  1962. package/node_modules/uuid/dist/esm-node/sha1.js +10 -0
  1963. package/node_modules/uuid/dist/esm-node/stringify.js +31 -0
  1964. package/node_modules/uuid/dist/esm-node/v1.js +125 -0
  1965. package/node_modules/uuid/dist/esm-node/v1ToV6.js +20 -0
  1966. package/node_modules/uuid/dist/esm-node/v3.js +4 -0
  1967. package/node_modules/uuid/dist/esm-node/v35.js +55 -0
  1968. package/node_modules/uuid/dist/esm-node/v4.js +25 -0
  1969. package/node_modules/uuid/dist/esm-node/v5.js +4 -0
  1970. package/node_modules/uuid/dist/esm-node/v6.js +32 -0
  1971. package/node_modules/uuid/dist/esm-node/v6ToV1.js +20 -0
  1972. package/node_modules/uuid/dist/esm-node/v7.js +146 -0
  1973. package/node_modules/uuid/dist/esm-node/validate.js +5 -0
  1974. package/node_modules/uuid/dist/esm-node/version.js +8 -0
  1975. package/node_modules/uuid/dist/index.js +104 -0
  1976. package/node_modules/uuid/dist/max.js +7 -0
  1977. package/node_modules/uuid/dist/md5-browser.js +200 -0
  1978. package/node_modules/uuid/dist/md5.js +17 -0
  1979. package/node_modules/uuid/dist/native-browser.js +10 -0
  1980. package/node_modules/uuid/dist/native.js +11 -0
  1981. package/node_modules/uuid/dist/nil.js +7 -0
  1982. package/node_modules/uuid/dist/parse.js +44 -0
  1983. package/node_modules/uuid/dist/regex.js +7 -0
  1984. package/node_modules/uuid/dist/rng-browser.js +23 -0
  1985. package/node_modules/uuid/dist/rng.js +17 -0
  1986. package/node_modules/uuid/dist/sha1-browser.js +82 -0
  1987. package/node_modules/uuid/dist/sha1.js +17 -0
  1988. package/node_modules/uuid/dist/stringify.js +38 -0
  1989. package/node_modules/uuid/dist/uuid-bin.js +75 -0
  1990. package/node_modules/uuid/dist/v1.js +131 -0
  1991. package/node_modules/uuid/dist/v1ToV6.js +26 -0
  1992. package/node_modules/uuid/dist/v3.js +11 -0
  1993. package/node_modules/uuid/dist/v35.js +63 -0
  1994. package/node_modules/uuid/dist/v4.js +32 -0
  1995. package/node_modules/uuid/dist/v5.js +11 -0
  1996. package/node_modules/uuid/dist/v6.js +38 -0
  1997. package/node_modules/uuid/dist/v6ToV1.js +26 -0
  1998. package/node_modules/uuid/dist/v7.js +152 -0
  1999. package/node_modules/uuid/dist/validate.js +12 -0
  2000. package/node_modules/uuid/dist/version.js +15 -0
  2001. package/node_modules/uuid/package.json +142 -0
  2002. package/node_modules/uuid/wrapper.mjs +15 -0
  2003. package/node_modules/wrap-ansi/index.js +216 -0
  2004. package/node_modules/wrap-ansi/license +9 -0
  2005. package/node_modules/wrap-ansi/package.json +62 -0
  2006. package/node_modules/wrap-ansi/readme.md +91 -0
  2007. package/node_modules/wrappy/LICENSE +15 -0
  2008. package/node_modules/wrappy/README.md +36 -0
  2009. package/node_modules/wrappy/package.json +29 -0
  2010. package/node_modules/wrappy/wrappy.js +33 -0
  2011. package/node_modules/y18n/LICENSE +13 -0
  2012. package/node_modules/y18n/README.md +127 -0
  2013. package/node_modules/y18n/build/index.cjs +203 -0
  2014. package/node_modules/y18n/build/lib/cjs.js +6 -0
  2015. package/node_modules/y18n/build/lib/index.js +174 -0
  2016. package/node_modules/y18n/build/lib/platform-shims/node.js +19 -0
  2017. package/node_modules/y18n/index.mjs +8 -0
  2018. package/node_modules/y18n/package.json +70 -0
  2019. package/node_modules/yargs/LICENSE +21 -0
  2020. package/node_modules/yargs/README.md +204 -0
  2021. package/node_modules/yargs/browser.d.ts +5 -0
  2022. package/node_modules/yargs/browser.mjs +7 -0
  2023. package/node_modules/yargs/build/index.cjs +1 -0
  2024. package/node_modules/yargs/build/lib/argsert.js +62 -0
  2025. package/node_modules/yargs/build/lib/command.js +449 -0
  2026. package/node_modules/yargs/build/lib/completion-templates.js +48 -0
  2027. package/node_modules/yargs/build/lib/completion.js +243 -0
  2028. package/node_modules/yargs/build/lib/middleware.js +88 -0
  2029. package/node_modules/yargs/build/lib/parse-command.js +32 -0
  2030. package/node_modules/yargs/build/lib/typings/common-types.js +9 -0
  2031. package/node_modules/yargs/build/lib/typings/yargs-parser-types.js +1 -0
  2032. package/node_modules/yargs/build/lib/usage.js +584 -0
  2033. package/node_modules/yargs/build/lib/utils/apply-extends.js +59 -0
  2034. package/node_modules/yargs/build/lib/utils/is-promise.js +5 -0
  2035. package/node_modules/yargs/build/lib/utils/levenshtein.js +34 -0
  2036. package/node_modules/yargs/build/lib/utils/maybe-async-result.js +17 -0
  2037. package/node_modules/yargs/build/lib/utils/obj-filter.js +10 -0
  2038. package/node_modules/yargs/build/lib/utils/process-argv.js +17 -0
  2039. package/node_modules/yargs/build/lib/utils/set-blocking.js +12 -0
  2040. package/node_modules/yargs/build/lib/utils/which-module.js +10 -0
  2041. package/node_modules/yargs/build/lib/validation.js +305 -0
  2042. package/node_modules/yargs/build/lib/yargs-factory.js +1512 -0
  2043. package/node_modules/yargs/build/lib/yerror.js +9 -0
  2044. package/node_modules/yargs/helpers/helpers.mjs +10 -0
  2045. package/node_modules/yargs/helpers/index.js +14 -0
  2046. package/node_modules/yargs/helpers/package.json +3 -0
  2047. package/node_modules/yargs/index.cjs +53 -0
  2048. package/node_modules/yargs/index.mjs +8 -0
  2049. package/node_modules/yargs/lib/platform-shims/browser.mjs +95 -0
  2050. package/node_modules/yargs/lib/platform-shims/esm.mjs +73 -0
  2051. package/node_modules/yargs/locales/be.json +46 -0
  2052. package/node_modules/yargs/locales/cs.json +51 -0
  2053. package/node_modules/yargs/locales/de.json +46 -0
  2054. package/node_modules/yargs/locales/en.json +55 -0
  2055. package/node_modules/yargs/locales/es.json +46 -0
  2056. package/node_modules/yargs/locales/fi.json +49 -0
  2057. package/node_modules/yargs/locales/fr.json +53 -0
  2058. package/node_modules/yargs/locales/hi.json +49 -0
  2059. package/node_modules/yargs/locales/hu.json +46 -0
  2060. package/node_modules/yargs/locales/id.json +50 -0
  2061. package/node_modules/yargs/locales/it.json +46 -0
  2062. package/node_modules/yargs/locales/ja.json +51 -0
  2063. package/node_modules/yargs/locales/ko.json +49 -0
  2064. package/node_modules/yargs/locales/nb.json +44 -0
  2065. package/node_modules/yargs/locales/nl.json +49 -0
  2066. package/node_modules/yargs/locales/nn.json +44 -0
  2067. package/node_modules/yargs/locales/pirate.json +13 -0
  2068. package/node_modules/yargs/locales/pl.json +49 -0
  2069. package/node_modules/yargs/locales/pt.json +45 -0
  2070. package/node_modules/yargs/locales/pt_BR.json +48 -0
  2071. package/node_modules/yargs/locales/ru.json +51 -0
  2072. package/node_modules/yargs/locales/th.json +46 -0
  2073. package/node_modules/yargs/locales/tr.json +48 -0
  2074. package/node_modules/yargs/locales/uk_UA.json +51 -0
  2075. package/node_modules/yargs/locales/uz.json +52 -0
  2076. package/node_modules/yargs/locales/zh_CN.json +48 -0
  2077. package/node_modules/yargs/locales/zh_TW.json +51 -0
  2078. package/node_modules/yargs/package.json +123 -0
  2079. package/node_modules/yargs/yargs +9 -0
  2080. package/node_modules/yargs/yargs.mjs +10 -0
  2081. package/node_modules/yargs-parser/LICENSE.txt +14 -0
  2082. package/node_modules/yargs-parser/README.md +518 -0
  2083. package/node_modules/yargs-parser/browser.js +29 -0
  2084. package/node_modules/yargs-parser/build/index.cjs +1050 -0
  2085. package/node_modules/yargs-parser/build/lib/index.js +62 -0
  2086. package/node_modules/yargs-parser/build/lib/string-utils.js +65 -0
  2087. package/node_modules/yargs-parser/build/lib/tokenize-arg-string.js +40 -0
  2088. package/node_modules/yargs-parser/build/lib/yargs-parser-types.js +12 -0
  2089. package/node_modules/yargs-parser/build/lib/yargs-parser.js +1045 -0
  2090. package/node_modules/yargs-parser/package.json +92 -0
  2091. package/package.json +8 -2
  2092. package/scripts/postinstall.cjs +85 -0
@@ -0,0 +1,2300 @@
1
+ #if defined(__GNUC__) && __GNUC__ >= 8
2
+ #define DISABLE_WCAST_FUNCTION_TYPE _Pragma("GCC diagnostic push") _Pragma("GCC diagnostic ignored \"-Wcast-function-type\"")
3
+ #define DISABLE_WCAST_FUNCTION_TYPE_END _Pragma("GCC diagnostic pop")
4
+ #else
5
+ #define DISABLE_WCAST_FUNCTION_TYPE
6
+ #define DISABLE_WCAST_FUNCTION_TYPE_END
7
+ #endif
8
+
9
+ #include <stdio.h>
10
+ #include <string.h>
11
+ #include <assert.h>
12
+
13
+ DISABLE_WCAST_FUNCTION_TYPE
14
+ #include <node.h>
15
+ #include <node_buffer.h>
16
+ #include <nan.h>
17
+ DISABLE_WCAST_FUNCTION_TYPE_END
18
+
19
+ #if NODE_MAJOR_VERSION >= 17
20
+ # include <openssl/configuration.h>
21
+ #endif
22
+
23
+ #include <openssl/err.h>
24
+ #include <openssl/evp.h>
25
+ #include <openssl/hmac.h>
26
+
27
+ #ifndef _WIN32
28
+ # include <dlfcn.h>
29
+ #endif
30
+
31
+ typedef int (*ctx_iv_len_func)(const EVP_CIPHER_CTX*);
32
+ typedef int (*ctx_key_len_func)(const EVP_CIPHER_CTX*);
33
+ typedef int (*ctx_get_block_size_func)(const EVP_CIPHER_CTX*);
34
+ typedef int (*cipher_flags_func)(const EVP_CIPHER*);
35
+ ctx_iv_len_func ctx_iv_len = nullptr;
36
+ ctx_key_len_func ctx_key_len = nullptr;
37
+ ctx_get_block_size_func ctx_get_block_size = nullptr;
38
+ cipher_flags_func cipher_flags = nullptr;
39
+
40
+ #if REAL_OPENSSL_MAJOR < 3
41
+ # undef EVP_DigestSignUpdate
42
+ # define EVP_DigestSignUpdate EVP_DigestUpdate
43
+ # undef EVP_PKEY_OP_SIGNCTX
44
+ # define EVP_PKEY_OP_SIGNCTX (1 << 6)
45
+ #endif
46
+
47
+ using namespace node;
48
+ using namespace v8;
49
+ using namespace std;
50
+
51
+ struct MarkPopErrorOnReturn {
52
+ MarkPopErrorOnReturn() { ERR_set_mark(); }
53
+ ~MarkPopErrorOnReturn() { ERR_pop_to_mark(); }
54
+ };
55
+
56
+ enum ErrorType {
57
+ kErrNone,
58
+ kErrOpenSSL,
59
+ kErrBadIVLen,
60
+ kErrBadKeyLen,
61
+ kErrAADFailure,
62
+ kErrTagFailure,
63
+ kErrPartialEncrypt,
64
+ kErrBadCipherName,
65
+ kErrBadHMACName,
66
+ kErrBadHMACLen,
67
+ kErrBadInit,
68
+ kErrPartialDecrypt,
69
+ kErrInvalidMAC,
70
+ kErrBadBlockLen
71
+ };
72
+
73
+ #define MAX_MAC_LEN 64
74
+
75
+ #define POLY1305_KEYLEN 32
76
+ #define POLY1305_TAGLEN 16
77
+ class ChaChaPolyCipher : public ObjectWrap {
78
+ public:
79
+ static NAN_MODULE_INIT(Init) {
80
+ Local<FunctionTemplate> tpl = Nan::New<FunctionTemplate>(New);
81
+ tpl->SetClassName(Nan::New("ChaChaPolyCipher").ToLocalChecked());
82
+ tpl->InstanceTemplate()->SetInternalFieldCount(1);
83
+
84
+ SetPrototypeMethod(tpl, "encrypt", Encrypt);
85
+ SetPrototypeMethod(tpl, "free", Free);
86
+
87
+ Local<Function> func = Nan::GetFunction(tpl).ToLocalChecked();
88
+ Local<Context> context = Nan::GetCurrentContext();
89
+ v8::Isolate* isolate = context->GetIsolate();
90
+
91
+ constructor().Set(isolate, func);
92
+
93
+ Nan::Set(target,
94
+ Nan::New("ChaChaPolyCipher").ToLocalChecked(),
95
+ func);
96
+ }
97
+
98
+ private:
99
+ explicit ChaChaPolyCipher()
100
+ : ctx_main_(nullptr),
101
+ ctx_pktlen_(nullptr),
102
+ #if REAL_OPENSSL_MAJOR >= 3
103
+ mac_(nullptr),
104
+ mac_ctx_(nullptr) {}
105
+ #else
106
+ md_ctx_(nullptr),
107
+ polykey_(nullptr),
108
+ polykey_ctx_(nullptr) {}
109
+ #endif
110
+
111
+ ~ChaChaPolyCipher() {
112
+ clear();
113
+ }
114
+
115
+ void clear() {
116
+ if (ctx_pktlen_) {
117
+ EVP_CIPHER_CTX_free(ctx_pktlen_);
118
+ ctx_pktlen_ = nullptr;
119
+ }
120
+ if (ctx_main_) {
121
+ EVP_CIPHER_CTX_free(ctx_main_);
122
+ ctx_main_ = nullptr;
123
+ }
124
+ #if REAL_OPENSSL_MAJOR >= 3
125
+ if (mac_ctx_) {
126
+ EVP_MAC_CTX_free(mac_ctx_);
127
+ mac_ctx_ = nullptr;
128
+ }
129
+ if (mac_) {
130
+ EVP_MAC_free(mac_);
131
+ mac_ = nullptr;
132
+ }
133
+ #else
134
+ if (polykey_) {
135
+ EVP_PKEY_free(polykey_);
136
+ polykey_ = nullptr;
137
+ }
138
+ if (md_ctx_) {
139
+ EVP_MD_CTX_free(md_ctx_);
140
+ md_ctx_ = nullptr;
141
+ }
142
+ // `polykey_ctx_` is not explicitly freed as it is freed implicitly when
143
+ // `md_ctx_` is freed
144
+ #endif
145
+ }
146
+
147
+ ErrorType init(unsigned char* keys, size_t keys_len) {
148
+ ErrorType r = kErrNone;
149
+ const EVP_CIPHER* const cipher = EVP_get_cipherbyname("chacha20");
150
+
151
+ if (keys_len != 64) {
152
+ r = kErrBadKeyLen;
153
+ goto out;
154
+ }
155
+
156
+ if (cipher == nullptr) {
157
+ r = kErrOpenSSL;
158
+ goto out;
159
+ }
160
+
161
+ if ((ctx_pktlen_ = EVP_CIPHER_CTX_new()) == nullptr
162
+ || (ctx_main_ = EVP_CIPHER_CTX_new()) == nullptr
163
+ #if REAL_OPENSSL_MAJOR >= 3
164
+ || (mac_ = EVP_MAC_fetch(nullptr,
165
+ "POLY1305",
166
+ "provider=default")) == nullptr
167
+ || (mac_ctx_ = EVP_MAC_CTX_new(mac_)) == nullptr
168
+ #else
169
+ || (md_ctx_ = EVP_MD_CTX_new()) == nullptr
170
+ #endif
171
+ || EVP_EncryptInit_ex(ctx_pktlen_,
172
+ cipher,
173
+ nullptr,
174
+ keys + 32,
175
+ nullptr) != 1
176
+ || EVP_EncryptInit_ex(ctx_main_,
177
+ cipher,
178
+ nullptr,
179
+ keys,
180
+ nullptr) != 1) {
181
+ r = kErrOpenSSL;
182
+ goto out;
183
+ }
184
+ if (ctx_iv_len(ctx_pktlen_) != 16) {
185
+ r = kErrBadIVLen;
186
+ goto out;
187
+ }
188
+
189
+ out:
190
+ return r;
191
+ }
192
+
193
+ ErrorType encrypt(unsigned char* packet,
194
+ uint32_t packet_len,
195
+ uint32_t seqno) {
196
+ ErrorType r = kErrNone;
197
+ size_t sig_len = 16;
198
+ int outlen = 0;
199
+
200
+ // `packet` layout:
201
+ // <packet length> <padding length> <payload> <padding> <poly1305 mac>
202
+ uint32_t data_len = packet_len - POLY1305_TAGLEN;
203
+
204
+ unsigned char polykey[POLY1305_KEYLEN] = {0};
205
+
206
+ uint8_t seqbuf[16] = {0};
207
+ ((uint8_t*)(seqbuf))[12] = (seqno >> 24) & 0xff;
208
+ ((uint8_t*)(seqbuf))[13] = (seqno >> 16) & 0xff;
209
+ ((uint8_t*)(seqbuf))[14] = (seqno >> 8) & 0xff;
210
+ ((uint8_t*)(seqbuf))[15] = seqno & 0xff;
211
+
212
+ // Generate Poly1305 key
213
+ if (EVP_EncryptInit_ex(ctx_main_, nullptr, nullptr, nullptr, seqbuf) != 1) {
214
+ r = kErrOpenSSL;
215
+ goto out;
216
+ }
217
+ if (EVP_EncryptUpdate(ctx_main_,
218
+ polykey,
219
+ &outlen,
220
+ polykey,
221
+ sizeof(polykey)) != 1) {
222
+ r = kErrOpenSSL;
223
+ goto out;
224
+ }
225
+ if (static_cast<size_t>(outlen) != sizeof(polykey)) {
226
+ r = kErrPartialEncrypt;
227
+ goto out;
228
+ }
229
+
230
+ // Encrypt packet length
231
+ if (EVP_EncryptInit_ex(ctx_pktlen_,
232
+ nullptr,
233
+ nullptr,
234
+ nullptr,
235
+ seqbuf) != 1) {
236
+ r = kErrOpenSSL;
237
+ goto out;
238
+ }
239
+ if (EVP_EncryptUpdate(ctx_pktlen_, packet, &outlen, packet, 4) != 1) {
240
+ r = kErrOpenSSL;
241
+ goto out;
242
+ }
243
+ if (static_cast<size_t>(outlen) != 4) {
244
+ r = kErrPartialEncrypt;
245
+ goto out;
246
+ }
247
+
248
+ // Encrypt rest of packet
249
+ seqbuf[0] = 1;
250
+ if (EVP_EncryptInit_ex(ctx_main_, nullptr, nullptr, nullptr, seqbuf) != 1) {
251
+ r = kErrOpenSSL;
252
+ goto out;
253
+ }
254
+ if (EVP_EncryptUpdate(ctx_main_,
255
+ packet + 4,
256
+ &outlen,
257
+ packet + 4,
258
+ data_len - 4) != 1) {
259
+ r = kErrOpenSSL;
260
+ goto out;
261
+ }
262
+ if (static_cast<size_t>(outlen) != data_len - 4) {
263
+ r = kErrPartialEncrypt;
264
+ goto out;
265
+ }
266
+
267
+ // Poly1305 over ciphertext
268
+ #if REAL_OPENSSL_MAJOR >= 3
269
+ // TODO: check if dup()'ing a "base" context instead of calling init() with
270
+ // the key each time is faster
271
+ if (EVP_MAC_init(mac_ctx_, polykey, sizeof(polykey), nullptr) != 1
272
+ || EVP_MAC_update(mac_ctx_, packet, data_len) != 1
273
+ || EVP_MAC_final(mac_ctx_, packet + data_len, &sig_len, sig_len) != 1) {
274
+ r = kErrOpenSSL;
275
+ goto out;
276
+ }
277
+ #else
278
+ if (polykey_) {
279
+ if (EVP_PKEY_CTX_ctrl(polykey_ctx_,
280
+ -1,
281
+ EVP_PKEY_OP_SIGNCTX,
282
+ EVP_PKEY_CTRL_SET_MAC_KEY,
283
+ sizeof(polykey),
284
+ (void*)polykey) <= 0) {
285
+ r = kErrOpenSSL;
286
+ goto out;
287
+ }
288
+ } else {
289
+ polykey_ = EVP_PKEY_new_raw_private_key(EVP_PKEY_POLY1305,
290
+ nullptr,
291
+ polykey,
292
+ sizeof(polykey));
293
+ if (polykey_ == nullptr) {
294
+ r = kErrOpenSSL;
295
+ goto out;
296
+ }
297
+
298
+ if (!EVP_DigestSignInit(md_ctx_,
299
+ &polykey_ctx_,
300
+ nullptr,
301
+ nullptr,
302
+ polykey_)) {
303
+ r = kErrOpenSSL;
304
+ goto out;
305
+ }
306
+ }
307
+
308
+ // Generate and write Poly1305 tag
309
+ if (EVP_DigestSign(md_ctx_,
310
+ packet + data_len,
311
+ &sig_len,
312
+ packet,
313
+ data_len) != 1) {
314
+ r = kErrOpenSSL;
315
+ goto out;
316
+ }
317
+ #endif
318
+
319
+ out:
320
+ return r;
321
+ }
322
+
323
+ static NAN_METHOD(New) {
324
+ MarkPopErrorOnReturn mark_pop_error_on_return;
325
+
326
+ if (!Buffer::HasInstance(info[0]))
327
+ return Nan::ThrowTypeError("Missing/Invalid keys");
328
+
329
+ ChaChaPolyCipher* obj = new ChaChaPolyCipher();
330
+ ErrorType r = obj->init(
331
+ reinterpret_cast<unsigned char*>(Buffer::Data(info[0])),
332
+ Buffer::Length(info[0])
333
+ );
334
+ if (r != kErrNone) {
335
+ if (r == kErrOpenSSL) {
336
+ char msg_buf[128] = {0};
337
+ ERR_error_string_n(ERR_get_error(), msg_buf, sizeof(msg_buf));
338
+ ERR_clear_error();
339
+ obj->clear();
340
+ delete obj;
341
+ return Nan::ThrowError(msg_buf);
342
+ }
343
+ obj->clear();
344
+ delete obj;
345
+ switch (r) {
346
+ case kErrBadKeyLen:
347
+ return Nan::ThrowError("Invalid keys length");
348
+ case kErrBadIVLen:
349
+ return Nan::ThrowError("Invalid IV length");
350
+ default:
351
+ return Nan::ThrowError("Unknown init failure");
352
+ }
353
+ }
354
+
355
+ obj->Wrap(info.This());
356
+ info.GetReturnValue().Set(info.This());
357
+ }
358
+
359
+ static NAN_METHOD(Encrypt) {
360
+ MarkPopErrorOnReturn mark_pop_error_on_return;
361
+
362
+ ChaChaPolyCipher* obj = ObjectWrap::Unwrap<ChaChaPolyCipher>(info.Holder());
363
+
364
+ if (!Buffer::HasInstance(info[0]))
365
+ return Nan::ThrowTypeError("Missing/Invalid packet");
366
+
367
+ if (!info[1]->IsUint32())
368
+ return Nan::ThrowTypeError("Missing/Invalid sequence number");
369
+
370
+ ErrorType r = obj->encrypt(
371
+ reinterpret_cast<unsigned char*>(Buffer::Data(info[0])),
372
+ Buffer::Length(info[0]),
373
+ Nan::To<uint32_t>(info[1]).FromJust()
374
+ );
375
+ switch (r) {
376
+ case kErrNone:
377
+ return;
378
+ case kErrOpenSSL: {
379
+ char msg_buf[128] = {0};
380
+ ERR_error_string_n(ERR_get_error(), msg_buf, sizeof(msg_buf));
381
+ ERR_clear_error();
382
+ return Nan::ThrowError(msg_buf);
383
+ }
384
+ default:
385
+ return Nan::ThrowError("Unknown encrypt failure");
386
+ }
387
+ }
388
+
389
+ static NAN_METHOD(Free) {
390
+ ChaChaPolyCipher* obj = ObjectWrap::Unwrap<ChaChaPolyCipher>(info.Holder());
391
+ obj->clear();
392
+ }
393
+
394
+ static inline v8::Eternal<v8::Function> & constructor() {
395
+ static v8::Eternal<v8::Function> my_constructor;
396
+ return my_constructor;
397
+ }
398
+
399
+ EVP_CIPHER_CTX* ctx_main_;
400
+ EVP_CIPHER_CTX* ctx_pktlen_;
401
+ #if REAL_OPENSSL_MAJOR >= 3
402
+ EVP_MAC* mac_;
403
+ EVP_MAC_CTX* mac_ctx_;
404
+ #else
405
+ EVP_MD_CTX* md_ctx_;
406
+ EVP_PKEY* polykey_;
407
+ EVP_PKEY_CTX* polykey_ctx_;
408
+ #endif
409
+ };
410
+
411
+ class AESGCMCipher : public ObjectWrap {
412
+ public:
413
+ static NAN_MODULE_INIT(Init) {
414
+ Local<FunctionTemplate> tpl = Nan::New<FunctionTemplate>(New);
415
+ tpl->SetClassName(Nan::New("AESGCMCipher").ToLocalChecked());
416
+ tpl->InstanceTemplate()->SetInternalFieldCount(1);
417
+
418
+ SetPrototypeMethod(tpl, "encrypt", Encrypt);
419
+ SetPrototypeMethod(tpl, "free", Free);
420
+
421
+ Local<Function> func = Nan::GetFunction(tpl).ToLocalChecked();
422
+ Local<Context> context = Nan::GetCurrentContext();
423
+ v8::Isolate* isolate = context->GetIsolate();
424
+
425
+ constructor().Set(isolate, func);
426
+
427
+ Nan::Set(target,
428
+ Nan::New("AESGCMCipher").ToLocalChecked(),
429
+ func);
430
+ }
431
+
432
+ private:
433
+ explicit AESGCMCipher() : ctx_(nullptr) {}
434
+
435
+ ~AESGCMCipher() {
436
+ clear();
437
+ }
438
+
439
+ void clear() {
440
+ if (ctx_) {
441
+ EVP_CIPHER_CTX_free(ctx_);
442
+ ctx_ = nullptr;
443
+ }
444
+ }
445
+
446
+ ErrorType init(const char* name,
447
+ unsigned char* key,
448
+ size_t key_len,
449
+ unsigned char* iv,
450
+ size_t iv_len) {
451
+ ErrorType r = kErrNone;
452
+
453
+ const EVP_CIPHER* const cipher = EVP_get_cipherbyname(name);
454
+ if (cipher == nullptr) {
455
+ r = kErrOpenSSL;
456
+ goto out;
457
+ }
458
+
459
+ if (cipher != EVP_aes_128_gcm() && cipher != EVP_aes_256_gcm()) {
460
+ r = kErrBadCipherName;
461
+ goto out;
462
+ }
463
+
464
+ if ((ctx_ = EVP_CIPHER_CTX_new()) == nullptr
465
+ || EVP_EncryptInit_ex(ctx_, cipher, nullptr, nullptr, nullptr) != 1) {
466
+ r = kErrOpenSSL;
467
+ goto out;
468
+ }
469
+
470
+ if (!EVP_CIPHER_CTX_ctrl(ctx_, EVP_CTRL_AEAD_SET_IVLEN, iv_len, nullptr)) {
471
+ r = kErrOpenSSL;
472
+ goto out;
473
+ }
474
+
475
+ if (key_len != static_cast<size_t>(ctx_key_len(ctx_))) {
476
+ if (!EVP_CIPHER_CTX_set_key_length(ctx_, key_len)) {
477
+ r = kErrBadKeyLen;
478
+ goto out;
479
+ }
480
+ }
481
+
482
+ // Set key and IV
483
+ if (EVP_EncryptInit_ex(ctx_, nullptr, nullptr, key, iv) != 1) {
484
+ r = kErrOpenSSL;
485
+ goto out;
486
+ }
487
+ if (!EVP_CIPHER_CTX_ctrl(ctx_, EVP_CTRL_GCM_SET_IV_FIXED, -1, iv)) {
488
+ r = kErrOpenSSL;
489
+ goto out;
490
+ }
491
+
492
+ // Disable padding
493
+ EVP_CIPHER_CTX_set_padding(ctx_, 0);
494
+
495
+ out:
496
+ return r;
497
+ }
498
+
499
+ ErrorType encrypt(unsigned char* packet, uint32_t packet_len) {
500
+ ErrorType r = kErrNone;
501
+
502
+ // `packet` layout:
503
+ // <packet length> <padding length> <payload> <padding> <mac>
504
+ uint32_t data_len = packet_len - 16;
505
+
506
+ int outlen = 0;
507
+
508
+ // Increment IV
509
+ unsigned char lastiv[1];
510
+ if (!EVP_CIPHER_CTX_ctrl(ctx_, EVP_CTRL_GCM_IV_GEN, 1, lastiv)) {
511
+ r = kErrOpenSSL;
512
+ goto out;
513
+ }
514
+
515
+ // Set AAD (the packet length)
516
+ if (!EVP_EncryptUpdate(ctx_, nullptr, &outlen, packet, 4)) {
517
+ r = kErrOpenSSL;
518
+ goto out;
519
+ }
520
+ if (outlen != 4) {
521
+ r = kErrAADFailure;
522
+ goto out;
523
+ }
524
+
525
+ // Encrypt everything but the packet length
526
+ if (EVP_EncryptUpdate(ctx_,
527
+ packet + 4,
528
+ &outlen,
529
+ packet + 4,
530
+ data_len - 4) != 1) {
531
+ r = kErrOpenSSL;
532
+ goto out;
533
+ }
534
+ if (static_cast<size_t>(outlen) != data_len - 4) {
535
+ r = kErrPartialEncrypt;
536
+ goto out;
537
+ }
538
+
539
+ // Generate authentication tag
540
+ if (!EVP_EncryptFinal_ex(ctx_, nullptr, &outlen)) {
541
+ r = kErrOpenSSL;
542
+ goto out;
543
+ }
544
+
545
+ // Write authentication tag
546
+ if (EVP_CIPHER_CTX_ctrl(ctx_,
547
+ EVP_CTRL_AEAD_GET_TAG,
548
+ 16,
549
+ packet + data_len) != 1) {
550
+ r = kErrOpenSSL;
551
+ goto out;
552
+ }
553
+
554
+ out:
555
+ return r;
556
+ }
557
+
558
+ static NAN_METHOD(New) {
559
+ MarkPopErrorOnReturn mark_pop_error_on_return;
560
+
561
+ if (!info[0]->IsString())
562
+ return Nan::ThrowTypeError("Missing/Invalid OpenSSL cipher name");
563
+
564
+ if (!Buffer::HasInstance(info[1]))
565
+ return Nan::ThrowTypeError("Missing/Invalid key");
566
+
567
+ if (!Buffer::HasInstance(info[2]))
568
+ return Nan::ThrowTypeError("Missing/Invalid iv");
569
+
570
+ const Nan::Utf8String cipher_name(info[0]);
571
+
572
+ AESGCMCipher* obj = new AESGCMCipher();
573
+ ErrorType r = obj->init(
574
+ *cipher_name,
575
+ reinterpret_cast<unsigned char*>(Buffer::Data(info[1])),
576
+ Buffer::Length(info[1]),
577
+ reinterpret_cast<unsigned char*>(Buffer::Data(info[2])),
578
+ Buffer::Length(info[2])
579
+ );
580
+ if (r != kErrNone) {
581
+ if (r == kErrOpenSSL) {
582
+ char msg_buf[128] = {0};
583
+ ERR_error_string_n(ERR_get_error(), msg_buf, sizeof(msg_buf));
584
+ ERR_clear_error();
585
+ obj->clear();
586
+ delete obj;
587
+ return Nan::ThrowError(msg_buf);
588
+ }
589
+ obj->clear();
590
+ delete obj;
591
+ switch (r) {
592
+ case kErrBadKeyLen:
593
+ return Nan::ThrowError("Invalid keys length");
594
+ case kErrBadIVLen:
595
+ return Nan::ThrowError("Invalid IV length");
596
+ case kErrBadCipherName:
597
+ return Nan::ThrowError("Invalid AES GCM cipher name");
598
+ default:
599
+ return Nan::ThrowError("Unknown init failure");
600
+ }
601
+ }
602
+
603
+ obj->Wrap(info.This());
604
+ info.GetReturnValue().Set(info.This());
605
+ }
606
+
607
+ static NAN_METHOD(Encrypt) {
608
+ MarkPopErrorOnReturn mark_pop_error_on_return;
609
+
610
+ AESGCMCipher* obj = ObjectWrap::Unwrap<AESGCMCipher>(info.Holder());
611
+
612
+ if (!Buffer::HasInstance(info[0]))
613
+ return Nan::ThrowTypeError("Missing/Invalid packet");
614
+
615
+ ErrorType r = obj->encrypt(
616
+ reinterpret_cast<unsigned char*>(Buffer::Data(info[0])),
617
+ Buffer::Length(info[0])
618
+ );
619
+ switch (r) {
620
+ case kErrNone:
621
+ return;
622
+ case kErrAADFailure:
623
+ return Nan::ThrowError("Error setting AAD");
624
+ case kErrPartialEncrypt:
625
+ return Nan::ThrowError("Failed to completely encrypt packet");
626
+ case kErrTagFailure:
627
+ return Nan::ThrowError("Error generating authentication tag");
628
+ case kErrOpenSSL: {
629
+ char msg_buf[128] = {0};
630
+ ERR_error_string_n(ERR_get_error(), msg_buf, sizeof(msg_buf));
631
+ ERR_clear_error();
632
+ return Nan::ThrowError(msg_buf);
633
+ }
634
+ default:
635
+ return Nan::ThrowError("Unknown encrypt failure");
636
+ }
637
+ }
638
+
639
+ static NAN_METHOD(Free) {
640
+ AESGCMCipher* obj = ObjectWrap::Unwrap<AESGCMCipher>(info.Holder());
641
+ obj->clear();
642
+ }
643
+
644
+ static inline v8::Eternal<v8::Function> & constructor() {
645
+ static v8::Eternal<v8::Function> my_constructor;
646
+ return my_constructor;
647
+ }
648
+
649
+ EVP_CIPHER_CTX* ctx_;
650
+ };
651
+
652
+ class GenericCipher : public ObjectWrap {
653
+ public:
654
+ static NAN_MODULE_INIT(Init) {
655
+ Local<FunctionTemplate> tpl = Nan::New<FunctionTemplate>(New);
656
+ tpl->SetClassName(Nan::New("GenericCipher").ToLocalChecked());
657
+ tpl->InstanceTemplate()->SetInternalFieldCount(1);
658
+
659
+ SetPrototypeMethod(tpl, "encrypt", Encrypt);
660
+ SetPrototypeMethod(tpl, "free", Free);
661
+
662
+ Local<Function> func = Nan::GetFunction(tpl).ToLocalChecked();
663
+ Local<Context> context = Nan::GetCurrentContext();
664
+ v8::Isolate* isolate = context->GetIsolate();
665
+
666
+ constructor().Set(isolate, func);
667
+
668
+ Nan::Set(target,
669
+ Nan::New("GenericCipher").ToLocalChecked(),
670
+ func);
671
+ }
672
+
673
+ private:
674
+ explicit GenericCipher()
675
+ : ctx_(nullptr),
676
+ #if REAL_OPENSSL_MAJOR >= 3
677
+ mac_(nullptr),
678
+ mac_ctx_base_(nullptr),
679
+ #else
680
+ ctx_hmac_(nullptr),
681
+ #endif
682
+ hmac_len_(0),
683
+ is_etm_(0) {}
684
+
685
+ ~GenericCipher() {
686
+ clear();
687
+ }
688
+
689
+ void clear() {
690
+ if (ctx_) {
691
+ EVP_CIPHER_CTX_free(ctx_);
692
+ ctx_ = nullptr;
693
+ }
694
+ #if REAL_OPENSSL_MAJOR >= 3
695
+ if (mac_ctx_base_) {
696
+ EVP_MAC_CTX_free(mac_ctx_base_);
697
+ mac_ctx_base_ = nullptr;
698
+ }
699
+ if (mac_) {
700
+ EVP_MAC_free(mac_);
701
+ mac_ = nullptr;
702
+ }
703
+ #else
704
+ if (ctx_hmac_) {
705
+ HMAC_CTX_free(ctx_hmac_);
706
+ ctx_hmac_ = nullptr;
707
+ }
708
+ #endif
709
+ }
710
+
711
+ ErrorType init(const char* name,
712
+ unsigned char* key,
713
+ size_t key_len,
714
+ unsigned char* iv,
715
+ size_t iv_len,
716
+ const char* hmac_name,
717
+ unsigned char* hmac_key,
718
+ size_t hmac_key_len,
719
+ int is_etm) {
720
+ ErrorType r = kErrNone;
721
+
722
+ #if REAL_OPENSSL_MAJOR >= 3
723
+ OSSL_PARAM params[2];
724
+ #else
725
+ const EVP_MD* md;
726
+ #endif
727
+ const EVP_CIPHER* const cipher = EVP_get_cipherbyname(name);
728
+ if (cipher == nullptr) {
729
+ r = kErrOpenSSL;
730
+ goto out;
731
+ }
732
+
733
+ if ((ctx_ = EVP_CIPHER_CTX_new()) == nullptr
734
+ || EVP_EncryptInit_ex(ctx_, cipher, nullptr, nullptr, nullptr) != 1) {
735
+ r = kErrOpenSSL;
736
+ goto out;
737
+ }
738
+
739
+ if (iv_len != static_cast<size_t>(ctx_iv_len(ctx_))) {
740
+ r = kErrBadIVLen;
741
+ goto out;
742
+ }
743
+
744
+ if (key_len != static_cast<size_t>(ctx_key_len(ctx_))) {
745
+ if (!EVP_CIPHER_CTX_set_key_length(ctx_, key_len)) {
746
+ r = kErrBadKeyLen;
747
+ goto out;
748
+ }
749
+ }
750
+
751
+ // Set key and IV
752
+ if (EVP_EncryptInit_ex(ctx_, nullptr, nullptr, key, iv) != 1) {
753
+ r = kErrOpenSSL;
754
+ goto out;
755
+ }
756
+
757
+ // Disable padding
758
+ EVP_CIPHER_CTX_set_padding(ctx_, 0);
759
+
760
+ if (cipher == EVP_rc4()) {
761
+ /* The "arcfour128" algorithm is the RC4 cipher, as described in
762
+ [SCHNEIER], using a 128-bit key. The first 1536 bytes of keystream
763
+ generated by the cipher MUST be discarded, and the first byte of the
764
+ first encrypted packet MUST be encrypted using the 1537th byte of
765
+ keystream.
766
+
767
+ -- http://tools.ietf.org/html/rfc4345#section-4 */
768
+ unsigned char zeros[1536] = {0};
769
+ int outlen = sizeof(zeros);
770
+ if (EVP_EncryptUpdate(ctx_,
771
+ zeros,
772
+ &outlen,
773
+ zeros,
774
+ sizeof(zeros)) != 1) {
775
+ r = kErrOpenSSL;
776
+ goto out;
777
+ }
778
+ if (static_cast<size_t>(outlen) != sizeof(zeros)) {
779
+ r = kErrBadInit;
780
+ goto out;
781
+ }
782
+ }
783
+
784
+ #if REAL_OPENSSL_MAJOR >= 3
785
+ if ((mac_ = EVP_MAC_fetch(nullptr,
786
+ "HMAC",
787
+ "provider=default")) == nullptr) {
788
+ r = kErrOpenSSL;
789
+ goto out;
790
+ }
791
+ if ((mac_ctx_base_ = EVP_MAC_CTX_new(mac_)) == nullptr) {
792
+ r = kErrOpenSSL;
793
+ goto out;
794
+ }
795
+ params[0] = OSSL_PARAM_construct_utf8_string("digest",
796
+ const_cast<char*>(hmac_name),
797
+ 0);
798
+ params[1] = OSSL_PARAM_END;
799
+ if (EVP_MAC_init(mac_ctx_base_, hmac_key, hmac_key_len, params) != 1) {
800
+ EVP_MAC_CTX_free(mac_ctx_base_);
801
+ r = kErrOpenSSL;
802
+ goto out;
803
+ }
804
+ hmac_len_ = EVP_MAC_CTX_get_mac_size(mac_ctx_base_);
805
+ #else
806
+ md = EVP_get_digestbyname(hmac_name);
807
+ if (md == nullptr) {
808
+ r = kErrBadHMACName;
809
+ goto out;
810
+ }
811
+
812
+ if ((ctx_hmac_ = HMAC_CTX_new()) == nullptr
813
+ || HMAC_Init_ex(ctx_hmac_, hmac_key, hmac_key_len, md, nullptr) != 1) {
814
+ r = kErrOpenSSL;
815
+ goto out;
816
+ }
817
+
818
+ hmac_len_ = HMAC_size(ctx_hmac_);
819
+ #endif
820
+ is_etm_ = is_etm;
821
+
822
+ out:
823
+ return r;
824
+ }
825
+
826
+ ErrorType encrypt(unsigned char* packet,
827
+ uint32_t packet_len,
828
+ uint32_t seqno) {
829
+ ErrorType r = kErrNone;
830
+
831
+ // `packet` layout:
832
+ // <packet length> <padding length> <payload> <padding> <mac>
833
+ uint32_t data_len = packet_len - hmac_len_;
834
+
835
+ int outlen;
836
+
837
+ uint8_t seqbuf[4] = {0};
838
+ ((uint8_t*)(seqbuf))[0] = (seqno >> 24) & 0xff;
839
+ ((uint8_t*)(seqbuf))[1] = (seqno >> 16) & 0xff;
840
+ ((uint8_t*)(seqbuf))[2] = (seqno >> 8) & 0xff;
841
+ ((uint8_t*)(seqbuf))[3] = seqno & 0xff;
842
+
843
+ if (is_etm_) {
844
+ // Encrypt everything but packet length
845
+ if (EVP_EncryptUpdate(ctx_,
846
+ packet + 4,
847
+ &outlen,
848
+ packet + 4,
849
+ data_len - 4) != 1) {
850
+ r = kErrOpenSSL;
851
+ goto out;
852
+ }
853
+ if (static_cast<size_t>(outlen) != data_len - 4) {
854
+ r = kErrPartialEncrypt;
855
+ goto out;
856
+ }
857
+ }
858
+
859
+ // Calculate HMAC
860
+ {
861
+ #if REAL_OPENSSL_MAJOR >= 3
862
+ size_t outlen = hmac_len_;
863
+
864
+ EVP_MAC_CTX* mac_ctx = EVP_MAC_CTX_dup(mac_ctx_base_);
865
+ if (mac_ctx == nullptr) {
866
+ r = kErrOpenSSL;
867
+ goto out;
868
+ }
869
+ if (EVP_MAC_update(mac_ctx, seqbuf, sizeof(seqbuf)) != 1
870
+ || EVP_MAC_update(mac_ctx, packet, data_len) != 1
871
+ || EVP_MAC_final(mac_ctx,
872
+ packet + data_len,
873
+ reinterpret_cast<size_t*>(&outlen),
874
+ outlen) != 1) {
875
+ EVP_MAC_CTX_free(mac_ctx);
876
+ r = kErrOpenSSL;
877
+ goto out;
878
+ }
879
+ if (outlen != hmac_len_) {
880
+ EVP_MAC_CTX_free(mac_ctx);
881
+ r = kErrBadHMACLen;
882
+ goto out;
883
+ }
884
+ EVP_MAC_CTX_free(mac_ctx);
885
+ #else
886
+ unsigned int outlen = hmac_len_;
887
+ if (HMAC_Init_ex(ctx_hmac_, nullptr, 0, nullptr, nullptr) != 1
888
+ || HMAC_Update(ctx_hmac_, seqbuf, sizeof(seqbuf)) != 1
889
+ || HMAC_Update(ctx_hmac_, packet, data_len) != 1
890
+ || HMAC_Final(ctx_hmac_, packet + data_len, &outlen) != 1) {
891
+ r = kErrOpenSSL;
892
+ goto out;
893
+ }
894
+ if (outlen != hmac_len_) {
895
+ r = kErrBadHMACLen;
896
+ goto out;
897
+ }
898
+ #endif
899
+ }
900
+
901
+ if (!is_etm_) {
902
+ // Encrypt packet
903
+ if (EVP_EncryptUpdate(ctx_,
904
+ packet,
905
+ &outlen,
906
+ packet,
907
+ data_len) != 1) {
908
+ r = kErrOpenSSL;
909
+ goto out;
910
+ }
911
+ if (static_cast<size_t>(outlen) != data_len) {
912
+
913
+ r = kErrPartialEncrypt;
914
+ goto out;
915
+ }
916
+ }
917
+
918
+ out:
919
+ return r;
920
+ }
921
+
922
+ static NAN_METHOD(New) {
923
+ MarkPopErrorOnReturn mark_pop_error_on_return;
924
+
925
+ if (!info[0]->IsString())
926
+ return Nan::ThrowTypeError("Missing/Invalid cipher name");
927
+
928
+ if (!Buffer::HasInstance(info[1]))
929
+ return Nan::ThrowTypeError("Missing/Invalid cipher key");
930
+
931
+ if (!Buffer::HasInstance(info[2]))
932
+ return Nan::ThrowTypeError("Missing/Invalid cipher IV");
933
+
934
+ if (!info[3]->IsString())
935
+ return Nan::ThrowTypeError("Missing/Invalid HMAC name");
936
+
937
+ if (!Buffer::HasInstance(info[4]))
938
+ return Nan::ThrowTypeError("Missing/Invalid HMAC key");
939
+
940
+ if (!info[5]->IsBoolean())
941
+ return Nan::ThrowTypeError("Missing/Invalid HMAC ETM flag");
942
+
943
+ const Nan::Utf8String cipher_name(info[0]);
944
+ const Nan::Utf8String mac_name(info[3]);
945
+ int is_etm = (Nan::To<bool>(info[5]).FromJust() ? 1 : 0);
946
+
947
+ GenericCipher* obj = new GenericCipher();
948
+ ErrorType r = obj->init(
949
+ *cipher_name,
950
+ reinterpret_cast<unsigned char*>(Buffer::Data(info[1])),
951
+ Buffer::Length(info[1]),
952
+ reinterpret_cast<unsigned char*>(Buffer::Data(info[2])),
953
+ Buffer::Length(info[2]),
954
+ *mac_name,
955
+ reinterpret_cast<unsigned char*>(Buffer::Data(info[4])),
956
+ Buffer::Length(info[4]),
957
+ is_etm
958
+ );
959
+ if (r != kErrNone) {
960
+ if (r == kErrOpenSSL) {
961
+ char msg_buf[128] = {0};
962
+ ERR_error_string_n(ERR_get_error(), msg_buf, sizeof(msg_buf));
963
+ ERR_clear_error();
964
+ obj->clear();
965
+ delete obj;
966
+ return Nan::ThrowError(msg_buf);
967
+ }
968
+ obj->clear();
969
+ delete obj;
970
+ switch (r) {
971
+ case kErrBadKeyLen:
972
+ return Nan::ThrowError("Invalid keys length");
973
+ case kErrBadIVLen:
974
+ return Nan::ThrowError("Invalid IV length");
975
+ case kErrBadCipherName:
976
+ return Nan::ThrowError("Invalid cipher name");
977
+ case kErrBadHMACName:
978
+ return Nan::ThrowError("Invalid MAC name");
979
+ case kErrBadInit:
980
+ return Nan::ThrowError("Failed to properly initialize cipher");
981
+ default:
982
+ return Nan::ThrowError("Unknown init failure");
983
+ }
984
+ }
985
+
986
+ obj->Wrap(info.This());
987
+ info.GetReturnValue().Set(info.This());
988
+ }
989
+
990
+ static NAN_METHOD(Encrypt) {
991
+ MarkPopErrorOnReturn mark_pop_error_on_return;
992
+
993
+ GenericCipher* obj = ObjectWrap::Unwrap<GenericCipher>(info.Holder());
994
+
995
+ if (!Buffer::HasInstance(info[0]))
996
+ return Nan::ThrowTypeError("Missing/Invalid packet");
997
+
998
+ if (!info[1]->IsUint32())
999
+ return Nan::ThrowTypeError("Missing/Invalid sequence number");
1000
+
1001
+ ErrorType r = obj->encrypt(
1002
+ reinterpret_cast<unsigned char*>(Buffer::Data(info[0])),
1003
+ Buffer::Length(info[0]),
1004
+ Nan::To<uint32_t>(info[1]).FromJust()
1005
+ );
1006
+ switch (r) {
1007
+ case kErrNone:
1008
+ return;
1009
+ case kErrPartialEncrypt:
1010
+ return Nan::ThrowError("Failed to completely encrypt packet");
1011
+ case kErrBadHMACLen:
1012
+ return Nan::ThrowError("Unexpected HMAC length");
1013
+ case kErrOpenSSL: {
1014
+ char msg_buf[128] = {0};
1015
+ ERR_error_string_n(ERR_get_error(), msg_buf, sizeof(msg_buf));
1016
+ ERR_clear_error();
1017
+ return Nan::ThrowError(msg_buf);
1018
+ }
1019
+ default:
1020
+ return Nan::ThrowError("Unknown encrypt failure");
1021
+ }
1022
+ }
1023
+
1024
+ static NAN_METHOD(Free) {
1025
+ GenericCipher* obj = ObjectWrap::Unwrap<GenericCipher>(info.Holder());
1026
+ obj->clear();
1027
+ }
1028
+
1029
+ static inline v8::Eternal<v8::Function> & constructor() {
1030
+ static v8::Eternal<v8::Function> my_constructor;
1031
+ return my_constructor;
1032
+ }
1033
+
1034
+ EVP_CIPHER_CTX* ctx_;
1035
+ #if REAL_OPENSSL_MAJOR >= 3
1036
+ EVP_MAC* mac_;
1037
+ EVP_MAC_CTX* mac_ctx_base_;
1038
+ size_t hmac_len_;
1039
+ #else
1040
+ HMAC_CTX* ctx_hmac_;
1041
+ unsigned int hmac_len_;
1042
+ #endif
1043
+ int is_etm_;
1044
+ };
1045
+
1046
+ // =============================================================================
1047
+
1048
+ class ChaChaPolyDecipher : public ObjectWrap {
1049
+ public:
1050
+ static NAN_MODULE_INIT(Init) {
1051
+ Local<FunctionTemplate> tpl = Nan::New<FunctionTemplate>(New);
1052
+ tpl->SetClassName(Nan::New("ChaChaPolyDecipher").ToLocalChecked());
1053
+ tpl->InstanceTemplate()->SetInternalFieldCount(1);
1054
+
1055
+ SetPrototypeMethod(tpl, "decrypt", Decrypt);
1056
+ SetPrototypeMethod(tpl, "decryptLen", DecryptLen);
1057
+ SetPrototypeMethod(tpl, "free", Free);
1058
+
1059
+ Local<Function> func = Nan::GetFunction(tpl).ToLocalChecked();
1060
+ Local<Context> context = Nan::GetCurrentContext();
1061
+ v8::Isolate* isolate = context->GetIsolate();
1062
+
1063
+ constructor().Set(isolate, func);
1064
+
1065
+ Nan::Set(target,
1066
+ Nan::New("ChaChaPolyDecipher").ToLocalChecked(),
1067
+ func);
1068
+ }
1069
+
1070
+ private:
1071
+ explicit ChaChaPolyDecipher()
1072
+ : ctx_main_(nullptr),
1073
+ ctx_pktlen_(nullptr),
1074
+ #if REAL_OPENSSL_MAJOR >= 3
1075
+ mac_(nullptr),
1076
+ mac_ctx_(nullptr) {}
1077
+ #else
1078
+ md_ctx_(nullptr),
1079
+ polykey_(nullptr),
1080
+ polykey_ctx_(nullptr) {}
1081
+ #endif
1082
+
1083
+ ~ChaChaPolyDecipher() {
1084
+ clear();
1085
+ }
1086
+
1087
+ void clear() {
1088
+ if (ctx_pktlen_) {
1089
+ EVP_CIPHER_CTX_free(ctx_pktlen_);
1090
+ ctx_pktlen_ = nullptr;
1091
+ }
1092
+ if (ctx_main_) {
1093
+ EVP_CIPHER_CTX_free(ctx_main_);
1094
+ ctx_main_ = nullptr;
1095
+ }
1096
+ #if REAL_OPENSSL_MAJOR >= 3
1097
+ if (mac_ctx_) {
1098
+ EVP_MAC_CTX_free(mac_ctx_);
1099
+ mac_ctx_ = nullptr;
1100
+ }
1101
+ if (mac_) {
1102
+ EVP_MAC_free(mac_);
1103
+ mac_ = nullptr;
1104
+ }
1105
+ #else
1106
+ if (polykey_) {
1107
+ EVP_PKEY_free(polykey_);
1108
+ polykey_ = nullptr;
1109
+ }
1110
+ if (md_ctx_) {
1111
+ EVP_MD_CTX_free(md_ctx_);
1112
+ md_ctx_ = nullptr;
1113
+ }
1114
+ // `polykey_ctx_` is not explicitly freed as it is freed implicitly when
1115
+ // `md_ctx_` is freed
1116
+ #endif
1117
+ }
1118
+
1119
+ ErrorType init(unsigned char* keys, size_t keys_len) {
1120
+ ErrorType r = kErrNone;
1121
+ const EVP_CIPHER* const cipher = EVP_get_cipherbyname("chacha20");
1122
+
1123
+ if (keys_len != 64) {
1124
+ r = kErrBadKeyLen;
1125
+ goto out;
1126
+ }
1127
+
1128
+ if (cipher == nullptr) {
1129
+ r = kErrOpenSSL;
1130
+ goto out;
1131
+ }
1132
+
1133
+ if ((ctx_pktlen_ = EVP_CIPHER_CTX_new()) == nullptr
1134
+ || (ctx_main_ = EVP_CIPHER_CTX_new()) == nullptr
1135
+ #if REAL_OPENSSL_MAJOR >= 3
1136
+ || (mac_ = EVP_MAC_fetch(nullptr,
1137
+ "POLY1305",
1138
+ "provider=default")) == nullptr
1139
+ || (mac_ctx_ = EVP_MAC_CTX_new(mac_)) == nullptr
1140
+ #else
1141
+ || (md_ctx_ = EVP_MD_CTX_new()) == nullptr
1142
+ #endif
1143
+ || EVP_DecryptInit_ex(ctx_pktlen_,
1144
+ cipher,
1145
+ nullptr,
1146
+ keys + 32,
1147
+ nullptr) != 1
1148
+ || EVP_DecryptInit_ex(ctx_main_,
1149
+ cipher,
1150
+ nullptr,
1151
+ keys,
1152
+ nullptr) != 1) {
1153
+ r = kErrOpenSSL;
1154
+ goto out;
1155
+ }
1156
+ if (ctx_iv_len(ctx_pktlen_) != 16) {
1157
+ r = kErrBadIVLen;
1158
+ goto out;
1159
+ }
1160
+
1161
+ out:
1162
+ return r;
1163
+ }
1164
+
1165
+ ErrorType decrypt_length(unsigned char* data,
1166
+ size_t data_len,
1167
+ uint32_t seqno,
1168
+ uint32_t* packet_length) {
1169
+ ErrorType r = kErrNone;
1170
+ int outlen;
1171
+
1172
+ unsigned char dec_length_bytes[4];
1173
+
1174
+ uint8_t seqbuf[16] = {0};
1175
+ ((uint8_t*)(seqbuf))[12] = (seqno >> 24) & 0xff;
1176
+ ((uint8_t*)(seqbuf))[13] = (seqno >> 16) & 0xff;
1177
+ ((uint8_t*)(seqbuf))[14] = (seqno >> 8) & 0xff;
1178
+ ((uint8_t*)(seqbuf))[15] = seqno & 0xff;
1179
+
1180
+ if (EVP_DecryptInit_ex(ctx_pktlen_,
1181
+ nullptr,
1182
+ nullptr,
1183
+ nullptr,
1184
+ seqbuf) != 1) {
1185
+ r = kErrOpenSSL;
1186
+ goto out;
1187
+ }
1188
+ if (EVP_DecryptUpdate(ctx_pktlen_,
1189
+ dec_length_bytes,
1190
+ &outlen,
1191
+ data,
1192
+ data_len) != 1) {
1193
+ r = kErrOpenSSL;
1194
+ goto out;
1195
+ }
1196
+ if (static_cast<size_t>(outlen) != 4) {
1197
+ r = kErrPartialDecrypt;
1198
+ goto out;
1199
+ }
1200
+
1201
+ *packet_length = (uint32_t)dec_length_bytes[0] << 24
1202
+ | (uint32_t)dec_length_bytes[1] << 16
1203
+ | (uint32_t)dec_length_bytes[2] << 8
1204
+ | (uint32_t)dec_length_bytes[3];
1205
+ memcpy(length_bytes, data, data_len);
1206
+ out:
1207
+ return r;
1208
+ }
1209
+
1210
+ ErrorType decrypt(unsigned char* packet,
1211
+ uint32_t packet_len,
1212
+ unsigned char* mac,
1213
+ uint32_t seqno) {
1214
+ ErrorType r = kErrNone;
1215
+ size_t sig_len = 16;
1216
+ int outlen = 0;
1217
+
1218
+ // `packet` layout:
1219
+ // <padding length> <payload> <padding>
1220
+
1221
+ unsigned char polykey[POLY1305_KEYLEN] = {0};
1222
+ unsigned char calc_mac[POLY1305_TAGLEN] = {0};
1223
+
1224
+ uint8_t seqbuf[16] = {0};
1225
+ ((uint8_t*)(seqbuf))[12] = (seqno >> 24) & 0xff;
1226
+ ((uint8_t*)(seqbuf))[13] = (seqno >> 16) & 0xff;
1227
+ ((uint8_t*)(seqbuf))[14] = (seqno >> 8) & 0xff;
1228
+ ((uint8_t*)(seqbuf))[15] = seqno & 0xff;
1229
+
1230
+ // Generate Poly1305 key
1231
+ if (EVP_EncryptInit_ex(ctx_main_, nullptr, nullptr, nullptr, seqbuf) != 1) {
1232
+ r = kErrOpenSSL;
1233
+ goto out;
1234
+ }
1235
+ if (EVP_EncryptUpdate(ctx_main_,
1236
+ polykey,
1237
+ &outlen,
1238
+ polykey,
1239
+ sizeof(polykey)) != 1) {
1240
+ r = kErrOpenSSL;
1241
+ goto out;
1242
+ }
1243
+ if (static_cast<size_t>(outlen) != sizeof(polykey)) {
1244
+ r = kErrPartialEncrypt;
1245
+ goto out;
1246
+ }
1247
+
1248
+ // Poly1305 over ciphertext
1249
+ #if REAL_OPENSSL_MAJOR >= 3
1250
+ // TODO: check if dup()'ing a "base" context instead of calling init() with
1251
+ // the key each time is faster
1252
+ if (EVP_MAC_init(mac_ctx_, polykey, sizeof(polykey), nullptr) != 1
1253
+ || EVP_MAC_update(mac_ctx_, length_bytes, sizeof(length_bytes)) != 1
1254
+ || EVP_MAC_update(mac_ctx_, packet, packet_len) != 1
1255
+ || EVP_MAC_final(mac_ctx_, calc_mac, &sig_len, sig_len) != 1) {
1256
+ r = kErrOpenSSL;
1257
+ goto out;
1258
+ }
1259
+ #else
1260
+ if (polykey_) {
1261
+ if (EVP_PKEY_CTX_ctrl(polykey_ctx_,
1262
+ -1,
1263
+ EVP_PKEY_OP_SIGNCTX,
1264
+ EVP_PKEY_CTRL_SET_MAC_KEY,
1265
+ sizeof(polykey),
1266
+ (void*)polykey) <= 0) {
1267
+ r = kErrOpenSSL;
1268
+ goto out;
1269
+ }
1270
+ } else {
1271
+ polykey_ = EVP_PKEY_new_raw_private_key(EVP_PKEY_POLY1305,
1272
+ nullptr,
1273
+ polykey,
1274
+ sizeof(polykey));
1275
+ if (polykey_ == nullptr) {
1276
+ r = kErrOpenSSL;
1277
+ goto out;
1278
+ }
1279
+
1280
+ if (!EVP_DigestSignInit(md_ctx_,
1281
+ &polykey_ctx_,
1282
+ nullptr,
1283
+ nullptr,
1284
+ polykey_)) {
1285
+ r = kErrOpenSSL;
1286
+ goto out;
1287
+ }
1288
+ }
1289
+ if (EVP_DigestSignUpdate(md_ctx_,
1290
+ length_bytes,
1291
+ sizeof(length_bytes)) != 1) {
1292
+ r = kErrOpenSSL;
1293
+ goto out;
1294
+ }
1295
+ if (EVP_DigestSignUpdate(md_ctx_, packet, packet_len) != 1) {
1296
+ r = kErrOpenSSL;
1297
+ goto out;
1298
+ }
1299
+
1300
+ // Generate Poly1305 MAC
1301
+ if (EVP_DigestSignFinal(md_ctx_, calc_mac, &sig_len) != 1) {
1302
+ r = kErrOpenSSL;
1303
+ goto out;
1304
+ }
1305
+ #endif
1306
+
1307
+ // Compare MACs
1308
+ if (CRYPTO_memcmp(mac, calc_mac, sizeof(calc_mac))) {
1309
+ r = kErrInvalidMAC;
1310
+ goto out;
1311
+ }
1312
+
1313
+ // Decrypt packet
1314
+ seqbuf[0] = 1;
1315
+ if (EVP_DecryptInit_ex(ctx_main_, nullptr, nullptr, nullptr, seqbuf) != 1) {
1316
+ r = kErrOpenSSL;
1317
+ goto out;
1318
+ }
1319
+ if (EVP_DecryptUpdate(ctx_main_,
1320
+ packet,
1321
+ &outlen,
1322
+ packet,
1323
+ packet_len) != 1) {
1324
+ r = kErrOpenSSL;
1325
+ goto out;
1326
+ }
1327
+ if (static_cast<size_t>(outlen) != packet_len) {
1328
+ r = kErrPartialDecrypt;
1329
+ goto out;
1330
+ }
1331
+
1332
+ out:
1333
+ return r;
1334
+ }
1335
+
1336
+ static NAN_METHOD(New) {
1337
+ MarkPopErrorOnReturn mark_pop_error_on_return;
1338
+
1339
+ if (!Buffer::HasInstance(info[0]))
1340
+ return Nan::ThrowTypeError("Missing/Invalid keys");
1341
+
1342
+ ChaChaPolyDecipher* obj = new ChaChaPolyDecipher();
1343
+ ErrorType r = obj->init(
1344
+ reinterpret_cast<unsigned char*>(Buffer::Data(info[0])),
1345
+ Buffer::Length(info[0])
1346
+ );
1347
+ if (r != kErrNone) {
1348
+ if (r == kErrOpenSSL) {
1349
+ char msg_buf[128] = {0};
1350
+ ERR_error_string_n(ERR_get_error(), msg_buf, sizeof(msg_buf));
1351
+ ERR_clear_error();
1352
+ obj->clear();
1353
+ delete obj;
1354
+ return Nan::ThrowError(msg_buf);
1355
+ }
1356
+ obj->clear();
1357
+ delete obj;
1358
+ switch (r) {
1359
+ case kErrBadKeyLen:
1360
+ return Nan::ThrowError("Invalid keys length");
1361
+ case kErrBadIVLen:
1362
+ return Nan::ThrowError("Invalid IV length");
1363
+ default:
1364
+ return Nan::ThrowError("Unknown init failure");
1365
+ }
1366
+ }
1367
+
1368
+ obj->Wrap(info.This());
1369
+ info.GetReturnValue().Set(info.This());
1370
+ }
1371
+
1372
+ static NAN_METHOD(DecryptLen) {
1373
+ MarkPopErrorOnReturn mark_pop_error_on_return;
1374
+
1375
+ ChaChaPolyDecipher* obj =
1376
+ ObjectWrap::Unwrap<ChaChaPolyDecipher>(info.Holder());
1377
+
1378
+ if (!Buffer::HasInstance(info[0]) || Buffer::Length(info[0]) != 4)
1379
+ return Nan::ThrowTypeError("Missing/Invalid length bytes");
1380
+
1381
+ if (!info[1]->IsUint32())
1382
+ return Nan::ThrowTypeError("Missing/Invalid sequence number");
1383
+
1384
+ unsigned char* length_bytes =
1385
+ reinterpret_cast<unsigned char*>(Buffer::Data(info[0]));
1386
+
1387
+ uint32_t dec_packet_length;
1388
+ ErrorType r = obj->decrypt_length(
1389
+ length_bytes,
1390
+ Buffer::Length(info[0]),
1391
+ Nan::To<uint32_t>(info[1]).FromJust(),
1392
+ &dec_packet_length
1393
+ );
1394
+
1395
+ switch (r) {
1396
+ case kErrNone:
1397
+ return info.GetReturnValue().Set(dec_packet_length);
1398
+ case kErrPartialDecrypt:
1399
+ return Nan::ThrowError("Failed to completely decrypt packet length");
1400
+ case kErrOpenSSL: {
1401
+ char msg_buf[128] = {0};
1402
+ ERR_error_string_n(ERR_get_error(), msg_buf, sizeof(msg_buf));
1403
+ ERR_clear_error();
1404
+ return Nan::ThrowError(msg_buf);
1405
+ }
1406
+ default:
1407
+ return Nan::ThrowError("Unknown decrypt failure");
1408
+ }
1409
+ }
1410
+
1411
+ static NAN_METHOD(Decrypt) {
1412
+ MarkPopErrorOnReturn mark_pop_error_on_return;
1413
+
1414
+ ChaChaPolyDecipher* obj =
1415
+ ObjectWrap::Unwrap<ChaChaPolyDecipher>(info.Holder());
1416
+
1417
+ if (!Buffer::HasInstance(info[0]))
1418
+ return Nan::ThrowTypeError("Missing/Invalid packet");
1419
+
1420
+ if (!Buffer::HasInstance(info[1])
1421
+ || Buffer::Length(info[1]) != POLY1305_TAGLEN) {
1422
+ return Nan::ThrowTypeError("Missing/Invalid mac");
1423
+ }
1424
+
1425
+ if (!info[2]->IsUint32())
1426
+ return Nan::ThrowTypeError("Missing/Invalid sequence number");
1427
+
1428
+ ErrorType r = obj->decrypt(
1429
+ reinterpret_cast<unsigned char*>(Buffer::Data(info[0])),
1430
+ Buffer::Length(info[0]),
1431
+ reinterpret_cast<unsigned char*>(Buffer::Data(info[1])),
1432
+ Nan::To<uint32_t>(info[2]).FromJust()
1433
+ );
1434
+
1435
+ switch (r) {
1436
+ case kErrNone:
1437
+ return;
1438
+ case kErrInvalidMAC:
1439
+ return Nan::ThrowError("Invalid MAC");
1440
+ case kErrPartialDecrypt:
1441
+ return Nan::ThrowError("Failed to completely decrypt packet length");
1442
+ case kErrOpenSSL: {
1443
+ char msg_buf[128] = {0};
1444
+ ERR_error_string_n(ERR_get_error(), msg_buf, sizeof(msg_buf));
1445
+ ERR_clear_error();
1446
+ return Nan::ThrowError(msg_buf);
1447
+ }
1448
+ default:
1449
+ return Nan::ThrowError("Unknown decrypt failure");
1450
+ }
1451
+ }
1452
+
1453
+ static NAN_METHOD(Free) {
1454
+ ChaChaPolyDecipher* obj =
1455
+ ObjectWrap::Unwrap<ChaChaPolyDecipher>(info.Holder());
1456
+ obj->clear();
1457
+ }
1458
+
1459
+ static inline v8::Eternal<v8::Function> & constructor() {
1460
+ static v8::Eternal<v8::Function> my_constructor;
1461
+ return my_constructor;
1462
+ }
1463
+
1464
+ unsigned char length_bytes[4];
1465
+ EVP_CIPHER_CTX* ctx_main_;
1466
+ EVP_CIPHER_CTX* ctx_pktlen_;
1467
+ #if REAL_OPENSSL_MAJOR >= 3
1468
+ EVP_MAC* mac_;
1469
+ EVP_MAC_CTX* mac_ctx_;
1470
+ #else
1471
+ EVP_MD_CTX* md_ctx_;
1472
+ EVP_PKEY* polykey_;
1473
+ EVP_PKEY_CTX* polykey_ctx_;
1474
+ #endif
1475
+ };
1476
+
1477
+ class AESGCMDecipher : public ObjectWrap {
1478
+ public:
1479
+ static NAN_MODULE_INIT(Init) {
1480
+ Local<FunctionTemplate> tpl = Nan::New<FunctionTemplate>(New);
1481
+ tpl->SetClassName(Nan::New("AESGCMDecipher").ToLocalChecked());
1482
+ tpl->InstanceTemplate()->SetInternalFieldCount(1);
1483
+
1484
+ SetPrototypeMethod(tpl, "decrypt", Decrypt);
1485
+ SetPrototypeMethod(tpl, "free", Free);
1486
+
1487
+ Local<Function> func = Nan::GetFunction(tpl).ToLocalChecked();
1488
+ Local<Context> context = Nan::GetCurrentContext();
1489
+ v8::Isolate* isolate = context->GetIsolate();
1490
+
1491
+ constructor().Set(isolate, func);
1492
+
1493
+ Nan::Set(target,
1494
+ Nan::New("AESGCMDecipher").ToLocalChecked(),
1495
+ func);
1496
+ }
1497
+
1498
+ private:
1499
+ explicit AESGCMDecipher() : ctx_(nullptr) {}
1500
+
1501
+ ~AESGCMDecipher() {
1502
+ clear();
1503
+ }
1504
+
1505
+ void clear() {
1506
+ if (ctx_) {
1507
+ EVP_CIPHER_CTX_free(ctx_);
1508
+ ctx_ = nullptr;
1509
+ }
1510
+ }
1511
+
1512
+ ErrorType init(const char* name,
1513
+ unsigned char* key,
1514
+ size_t key_len,
1515
+ unsigned char* iv,
1516
+ size_t iv_len) {
1517
+ ErrorType r = kErrNone;
1518
+
1519
+ const EVP_CIPHER* const cipher = EVP_get_cipherbyname(name);
1520
+ if (cipher == nullptr) {
1521
+ r = kErrOpenSSL;
1522
+ goto out;
1523
+ }
1524
+
1525
+ if (cipher != EVP_aes_128_gcm() && cipher != EVP_aes_256_gcm()) {
1526
+ r = kErrBadCipherName;
1527
+ goto out;
1528
+ }
1529
+
1530
+ if ((ctx_ = EVP_CIPHER_CTX_new()) == nullptr
1531
+ || EVP_DecryptInit_ex(ctx_, cipher, nullptr, nullptr, nullptr) != 1) {
1532
+ r = kErrOpenSSL;
1533
+ goto out;
1534
+ }
1535
+
1536
+ if (!EVP_CIPHER_CTX_ctrl(ctx_, EVP_CTRL_AEAD_SET_IVLEN, iv_len, nullptr)) {
1537
+ r = kErrOpenSSL;
1538
+ goto out;
1539
+ }
1540
+
1541
+ if (key_len != static_cast<size_t>(ctx_key_len(ctx_))) {
1542
+ if (!EVP_CIPHER_CTX_set_key_length(ctx_, key_len)) {
1543
+ r = kErrBadKeyLen;
1544
+ goto out;
1545
+ }
1546
+ }
1547
+
1548
+ // Set key and IV
1549
+ if (EVP_DecryptInit_ex(ctx_, nullptr, nullptr, key, iv) != 1) {
1550
+ r = kErrOpenSSL;
1551
+ goto out;
1552
+ }
1553
+ if (!EVP_CIPHER_CTX_ctrl(ctx_, EVP_CTRL_GCM_SET_IV_FIXED, -1, iv)) {
1554
+ r = kErrOpenSSL;
1555
+ goto out;
1556
+ }
1557
+
1558
+ // Disable padding
1559
+ EVP_CIPHER_CTX_set_padding(ctx_, 0);
1560
+
1561
+ out:
1562
+ return r;
1563
+ }
1564
+
1565
+ ErrorType decrypt(unsigned char* packet,
1566
+ uint32_t packet_len,
1567
+ unsigned char* length_bytes,
1568
+ unsigned char* tag) {
1569
+ ErrorType r = kErrNone;
1570
+
1571
+ // `packet` layout:
1572
+ // <padding length> <payload> <padding>
1573
+
1574
+ int outlen;
1575
+
1576
+ // Increment IV
1577
+ unsigned char lastiv[1];
1578
+ if (!EVP_CIPHER_CTX_ctrl(ctx_, EVP_CTRL_GCM_IV_GEN, 1, lastiv)) {
1579
+ r = kErrOpenSSL;
1580
+ goto out;
1581
+ }
1582
+
1583
+ // Set AAD (the packet length)
1584
+ if (!EVP_DecryptUpdate(ctx_, nullptr, &outlen, length_bytes, 4)) {
1585
+ r = kErrOpenSSL;
1586
+ goto out;
1587
+ }
1588
+ if (outlen != 4) {
1589
+ r = kErrAADFailure;
1590
+ goto out;
1591
+ }
1592
+
1593
+ // Decrypt everything but the packet length
1594
+ if (EVP_DecryptUpdate(ctx_, packet, &outlen, packet, packet_len) != 1) {
1595
+ r = kErrOpenSSL;
1596
+ goto out;
1597
+ }
1598
+ if (static_cast<size_t>(outlen) != packet_len) {
1599
+ r = kErrPartialDecrypt;
1600
+ goto out;
1601
+ }
1602
+
1603
+ // Set authentication tag
1604
+ if (EVP_CIPHER_CTX_ctrl(ctx_, EVP_CTRL_AEAD_SET_TAG, 16, tag) != 1) {
1605
+ r = kErrOpenSSL;
1606
+ goto out;
1607
+ }
1608
+
1609
+ // Verify authentication tag
1610
+ if (!EVP_DecryptFinal_ex(ctx_, nullptr, &outlen)) {
1611
+ r = kErrOpenSSL;
1612
+ goto out;
1613
+ }
1614
+
1615
+ out:
1616
+ return r;
1617
+ }
1618
+
1619
+ static NAN_METHOD(New) {
1620
+ MarkPopErrorOnReturn mark_pop_error_on_return;
1621
+
1622
+ if (!info[0]->IsString())
1623
+ return Nan::ThrowTypeError("Missing/Invalid OpenSSL cipher name");
1624
+
1625
+ if (!Buffer::HasInstance(info[1]))
1626
+ return Nan::ThrowTypeError("Missing/Invalid key");
1627
+
1628
+ if (!Buffer::HasInstance(info[2]))
1629
+ return Nan::ThrowTypeError("Missing/Invalid iv");
1630
+
1631
+ const Nan::Utf8String cipher_name(info[0]);
1632
+
1633
+ AESGCMDecipher* obj = new AESGCMDecipher();
1634
+ ErrorType r = obj->init(
1635
+ *cipher_name,
1636
+ reinterpret_cast<unsigned char*>(Buffer::Data(info[1])),
1637
+ Buffer::Length(info[1]),
1638
+ reinterpret_cast<unsigned char*>(Buffer::Data(info[2])),
1639
+ Buffer::Length(info[2])
1640
+ );
1641
+ if (r != kErrNone) {
1642
+ if (r == kErrOpenSSL) {
1643
+ char msg_buf[128] = {0};
1644
+ ERR_error_string_n(ERR_get_error(), msg_buf, sizeof(msg_buf));
1645
+ ERR_clear_error();
1646
+ obj->clear();
1647
+ delete obj;
1648
+ return Nan::ThrowError(msg_buf);
1649
+ }
1650
+ obj->clear();
1651
+ delete obj;
1652
+ switch (r) {
1653
+ case kErrBadKeyLen:
1654
+ return Nan::ThrowError("Invalid keys length");
1655
+ case kErrBadIVLen:
1656
+ return Nan::ThrowError("Invalid IV length");
1657
+ case kErrBadCipherName:
1658
+ return Nan::ThrowError("Invalid AES GCM cipher name");
1659
+ default:
1660
+ return Nan::ThrowError("Unknown init failure");
1661
+ }
1662
+ }
1663
+
1664
+ obj->Wrap(info.This());
1665
+ info.GetReturnValue().Set(info.This());
1666
+ }
1667
+
1668
+ static NAN_METHOD(Decrypt) {
1669
+ MarkPopErrorOnReturn mark_pop_error_on_return;
1670
+
1671
+ AESGCMDecipher* obj = ObjectWrap::Unwrap<AESGCMDecipher>(info.Holder());
1672
+
1673
+ if (!Buffer::HasInstance(info[0]))
1674
+ return Nan::ThrowTypeError("Missing/Invalid packet");
1675
+
1676
+ if (!info[1]->IsUint32())
1677
+ return Nan::ThrowTypeError("Missing/Invalid length");
1678
+
1679
+ if (!Buffer::HasInstance(info[2]) || Buffer::Length(info[2]) != 16)
1680
+ return Nan::ThrowTypeError("Missing/Invalid tag");
1681
+
1682
+ uint32_t length = Nan::To<uint32_t>(info[1]).FromJust();
1683
+ unsigned char length_bytes[4];
1684
+ length_bytes[0] = (length >> 24) & 0xFF;
1685
+ length_bytes[1] = (length >> 16) & 0xFF;
1686
+ length_bytes[2] = (length >> 8) & 0xFF;
1687
+ length_bytes[3] = length & 0xFF;
1688
+
1689
+ ErrorType r = obj->decrypt(
1690
+ reinterpret_cast<unsigned char*>(Buffer::Data(info[0])),
1691
+ Buffer::Length(info[0]),
1692
+ length_bytes,
1693
+ reinterpret_cast<unsigned char*>(Buffer::Data(info[2]))
1694
+ );
1695
+ switch (r) {
1696
+ case kErrNone:
1697
+ return;
1698
+ case kErrAADFailure:
1699
+ return Nan::ThrowError("Error setting AAD");
1700
+ case kErrPartialDecrypt:
1701
+ return Nan::ThrowError("Failed to completely decrypt packet");
1702
+ case kErrTagFailure:
1703
+ return Nan::ThrowError("Error generating authentication tag");
1704
+ case kErrOpenSSL: {
1705
+ char msg_buf[128] = {0};
1706
+ ERR_error_string_n(ERR_get_error(), msg_buf, sizeof(msg_buf));
1707
+ ERR_clear_error();
1708
+ return Nan::ThrowError(msg_buf);
1709
+ }
1710
+ default:
1711
+ return Nan::ThrowError("Unknown decrypt failure");
1712
+ }
1713
+ }
1714
+
1715
+ static NAN_METHOD(Free) {
1716
+ AESGCMDecipher* obj = ObjectWrap::Unwrap<AESGCMDecipher>(info.Holder());
1717
+ obj->clear();
1718
+ }
1719
+
1720
+ static inline v8::Eternal<v8::Function> & constructor() {
1721
+ static v8::Eternal<v8::Function> my_constructor;
1722
+ return my_constructor;
1723
+ }
1724
+
1725
+ EVP_CIPHER_CTX* ctx_;
1726
+ };
1727
+
1728
+ class GenericDecipher : public ObjectWrap {
1729
+ public:
1730
+ static NAN_MODULE_INIT(Init) {
1731
+ Local<FunctionTemplate> tpl = Nan::New<FunctionTemplate>(New);
1732
+ tpl->SetClassName(Nan::New("GenericDecipher").ToLocalChecked());
1733
+ tpl->InstanceTemplate()->SetInternalFieldCount(1);
1734
+
1735
+ SetPrototypeMethod(tpl, "decryptBlock", DecryptBlock);
1736
+ SetPrototypeMethod(tpl, "decrypt", Decrypt);
1737
+ SetPrototypeMethod(tpl, "free", Free);
1738
+
1739
+ Local<Function> func = Nan::GetFunction(tpl).ToLocalChecked();
1740
+ Local<Context> context = Nan::GetCurrentContext();
1741
+ v8::Isolate* isolate = context->GetIsolate();
1742
+
1743
+ constructor().Set(isolate, func);
1744
+
1745
+ Nan::Set(target,
1746
+ Nan::New("GenericDecipher").ToLocalChecked(),
1747
+ func);
1748
+ }
1749
+
1750
+ private:
1751
+ explicit GenericDecipher()
1752
+ : ctx_(nullptr),
1753
+ #if REAL_OPENSSL_MAJOR >= 3
1754
+ mac_(nullptr),
1755
+ mac_ctx_base_(nullptr),
1756
+ #else
1757
+ ctx_hmac_(nullptr),
1758
+ #endif
1759
+ hmac_len_(0),
1760
+ is_etm_(0) {}
1761
+
1762
+ ~GenericDecipher() {
1763
+ clear();
1764
+ }
1765
+
1766
+ void clear() {
1767
+ if (ctx_) {
1768
+ EVP_CIPHER_CTX_free(ctx_);
1769
+ ctx_ = nullptr;
1770
+ }
1771
+ #if REAL_OPENSSL_MAJOR >= 3
1772
+ if (mac_ctx_base_) {
1773
+ EVP_MAC_CTX_free(mac_ctx_base_);
1774
+ mac_ctx_base_ = nullptr;
1775
+ }
1776
+ if (mac_) {
1777
+ EVP_MAC_free(mac_);
1778
+ mac_ = nullptr;
1779
+ }
1780
+ #else
1781
+ if (ctx_hmac_) {
1782
+ HMAC_CTX_free(ctx_hmac_);
1783
+ ctx_hmac_ = nullptr;
1784
+ }
1785
+ #endif
1786
+ }
1787
+
1788
+ ErrorType init(const char* name,
1789
+ unsigned char* key,
1790
+ size_t key_len,
1791
+ unsigned char* iv,
1792
+ size_t iv_len,
1793
+ const char* hmac_name,
1794
+ unsigned char* hmac_key,
1795
+ size_t hmac_key_len,
1796
+ int is_etm,
1797
+ size_t hmac_actual_len) {
1798
+ ErrorType r = kErrNone;
1799
+
1800
+ #if REAL_OPENSSL_MAJOR >= 3
1801
+ OSSL_PARAM params[2];
1802
+ #else
1803
+ const EVP_MD* md;
1804
+ #endif
1805
+ const EVP_CIPHER* const cipher = EVP_get_cipherbyname(name);
1806
+ if (cipher == nullptr) {
1807
+ r = kErrOpenSSL;
1808
+ goto out;
1809
+ }
1810
+
1811
+ if ((ctx_ = EVP_CIPHER_CTX_new()) == nullptr
1812
+ || EVP_DecryptInit_ex(ctx_, cipher, nullptr, nullptr, nullptr) != 1) {
1813
+ r = kErrOpenSSL;
1814
+ goto out;
1815
+ }
1816
+
1817
+ if (iv_len != static_cast<size_t>(ctx_iv_len(ctx_))) {
1818
+ r = kErrBadIVLen;
1819
+ goto out;
1820
+ }
1821
+
1822
+ if (key_len != static_cast<size_t>(ctx_key_len(ctx_))) {
1823
+ if (!EVP_CIPHER_CTX_set_key_length(ctx_, key_len)) {
1824
+ r = kErrBadKeyLen;
1825
+ goto out;
1826
+ }
1827
+ }
1828
+
1829
+ // Set key and IV
1830
+ if (EVP_DecryptInit_ex(ctx_, nullptr, nullptr, key, iv) != 1) {
1831
+ r = kErrOpenSSL;
1832
+ goto out;
1833
+ }
1834
+
1835
+ // Disable padding
1836
+ EVP_CIPHER_CTX_set_padding(ctx_, 0);
1837
+
1838
+ if (cipher == EVP_rc4()) {
1839
+ /* The "arcfour128" algorithm is the RC4 cipher, as described in
1840
+ [SCHNEIER], using a 128-bit key. The first 1536 bytes of keystream
1841
+ generated by the cipher MUST be discarded, and the first byte of the
1842
+ first encrypted packet MUST be encrypted using the 1537th byte of
1843
+ keystream.
1844
+
1845
+ -- http://tools.ietf.org/html/rfc4345#section-4 */
1846
+ unsigned char zeros[1536] = {0};
1847
+ int outlen = sizeof(zeros);
1848
+ if (EVP_DecryptUpdate(ctx_,
1849
+ zeros,
1850
+ &outlen,
1851
+ zeros,
1852
+ sizeof(zeros)) != 1) {
1853
+ r = kErrOpenSSL;
1854
+ goto out;
1855
+ }
1856
+ if (static_cast<size_t>(outlen) != sizeof(zeros)) {
1857
+ r = kErrBadInit;
1858
+ goto out;
1859
+ }
1860
+ }
1861
+
1862
+ #if REAL_OPENSSL_MAJOR >= 3
1863
+ if ((mac_ = EVP_MAC_fetch(nullptr,
1864
+ "HMAC",
1865
+ "provider=default")) == nullptr) {
1866
+ r = kErrOpenSSL;
1867
+ goto out;
1868
+ }
1869
+ if ((mac_ctx_base_ = EVP_MAC_CTX_new(mac_)) == nullptr) {
1870
+ r = kErrOpenSSL;
1871
+ goto out;
1872
+ }
1873
+ params[0] = OSSL_PARAM_construct_utf8_string("digest",
1874
+ const_cast<char*>(hmac_name),
1875
+ 0);
1876
+ params[1] = OSSL_PARAM_END;
1877
+ if (EVP_MAC_init(mac_ctx_base_, hmac_key, hmac_key_len, params) != 1) {
1878
+ EVP_MAC_CTX_free(mac_ctx_base_);
1879
+ r = kErrOpenSSL;
1880
+ goto out;
1881
+ }
1882
+ hmac_len_ = EVP_MAC_CTX_get_mac_size(mac_ctx_base_);
1883
+ #else
1884
+ md = EVP_get_digestbyname(hmac_name);
1885
+ if (md == nullptr) {
1886
+ r = kErrBadHMACName;
1887
+ goto out;
1888
+ }
1889
+
1890
+ if ((ctx_hmac_ = HMAC_CTX_new()) == nullptr
1891
+ || HMAC_Init_ex(ctx_hmac_, hmac_key, hmac_key_len, md, nullptr) != 1) {
1892
+ r = kErrOpenSSL;
1893
+ goto out;
1894
+ }
1895
+
1896
+ hmac_len_ = HMAC_size(ctx_hmac_);
1897
+ #endif
1898
+ hmac_actual_len_ = hmac_actual_len;
1899
+ is_etm_ = is_etm;
1900
+ #if REAL_OPENSSL_MAJOR >= 3
1901
+ switch (EVP_CIPHER_CTX_mode(ctx_)) {
1902
+ #else
1903
+ switch (cipher_flags(EVP_CIPHER_CTX_cipher(ctx_)) & EVP_CIPH_MODE) {
1904
+ #endif
1905
+ case EVP_CIPH_STREAM_CIPHER:
1906
+ case EVP_CIPH_CTR_MODE:
1907
+ is_stream_ = 1;
1908
+ break;
1909
+ default:
1910
+ is_stream_ = 0;
1911
+ }
1912
+ block_size_ = ctx_get_block_size(ctx_);
1913
+
1914
+ out:
1915
+ return r;
1916
+ }
1917
+
1918
+ ErrorType decrypt_block(unsigned char* data, uint32_t data_len) {
1919
+ ErrorType r = kErrNone;
1920
+
1921
+ int outlen;
1922
+
1923
+ if (!is_stream_ && data_len != block_size_) {
1924
+ r = kErrBadBlockLen;
1925
+ goto out;
1926
+ }
1927
+
1928
+ // Decrypt block
1929
+ if (EVP_DecryptUpdate(ctx_, data, &outlen, data, data_len) != 1) {
1930
+ r = kErrOpenSSL;
1931
+ goto out;
1932
+ }
1933
+ if (static_cast<size_t>(outlen) != data_len) {
1934
+ r = kErrPartialDecrypt;
1935
+ goto out;
1936
+ }
1937
+
1938
+ out:
1939
+ return r;
1940
+ }
1941
+
1942
+ ErrorType decrypt(unsigned char* packet,
1943
+ uint32_t packet_len,
1944
+ uint32_t seqno,
1945
+ unsigned char* first_block,
1946
+ uint32_t first_block_len,
1947
+ unsigned char* mac,
1948
+ uint32_t mac_len) {
1949
+ ErrorType r = kErrNone;
1950
+
1951
+ int outlen;
1952
+ unsigned char calc_mac[MAX_MAC_LEN] = {0};
1953
+
1954
+ uint8_t seqbuf[4] = {0};
1955
+ ((uint8_t*)(seqbuf))[0] = (seqno >> 24) & 0xff;
1956
+ ((uint8_t*)(seqbuf))[1] = (seqno >> 16) & 0xff;
1957
+ ((uint8_t*)(seqbuf))[2] = (seqno >> 8) & 0xff;
1958
+ ((uint8_t*)(seqbuf))[3] = seqno & 0xff;
1959
+
1960
+ if (!is_etm_) {
1961
+ // `first_block` for non-ETM should be a completely decrypted first block
1962
+ if (!is_stream_ && first_block_len != block_size_) {
1963
+ r = kErrBadBlockLen;
1964
+ goto out;
1965
+ }
1966
+
1967
+ const int offset = (is_stream_ ? 0 : block_size_ - 4);
1968
+ // Decrypt the rest of the packet
1969
+ if (EVP_DecryptUpdate(ctx_,
1970
+ packet + offset,
1971
+ &outlen,
1972
+ packet + offset,
1973
+ packet_len - offset) != 1) {
1974
+ r = kErrOpenSSL;
1975
+ goto out;
1976
+ }
1977
+ if (static_cast<size_t>(outlen) != packet_len - offset) {
1978
+ r = kErrPartialDecrypt;
1979
+ goto out;
1980
+ }
1981
+ }
1982
+
1983
+ // Calculate and compare HMAC
1984
+ {
1985
+ #if REAL_OPENSSL_MAJOR >= 3
1986
+ size_t outlen = hmac_len_;
1987
+
1988
+ EVP_MAC_CTX* mac_ctx = EVP_MAC_CTX_dup(mac_ctx_base_);
1989
+ if (mac_ctx == nullptr) {
1990
+ r = kErrOpenSSL;
1991
+ goto out;
1992
+ }
1993
+ if (EVP_MAC_update(mac_ctx, seqbuf, sizeof(seqbuf)) != 1
1994
+ || EVP_MAC_update(mac_ctx, first_block, 4) != 1
1995
+ || EVP_MAC_update(mac_ctx, packet, packet_len) != 1
1996
+ || EVP_MAC_final(mac_ctx,
1997
+ calc_mac,
1998
+ &outlen,
1999
+ outlen) != 1) {
2000
+ EVP_MAC_CTX_free(mac_ctx);
2001
+ r = kErrOpenSSL;
2002
+ goto out;
2003
+ }
2004
+ if (outlen != hmac_len_ || mac_len != hmac_actual_len_) {
2005
+ EVP_MAC_CTX_free(mac_ctx);
2006
+ r = kErrBadHMACLen;
2007
+ goto out;
2008
+ }
2009
+ EVP_MAC_CTX_free(mac_ctx);
2010
+ #else
2011
+ unsigned int outlen = hmac_len_;
2012
+ if (HMAC_Init_ex(ctx_hmac_, nullptr, 0, nullptr, nullptr) != 1
2013
+ || HMAC_Update(ctx_hmac_, seqbuf, sizeof(seqbuf)) != 1
2014
+ || HMAC_Update(ctx_hmac_, first_block, 4) != 1
2015
+ || HMAC_Update(ctx_hmac_, packet, packet_len) != 1
2016
+ || HMAC_Final(ctx_hmac_, calc_mac, &outlen) != 1) {
2017
+ r = kErrOpenSSL;
2018
+ goto out;
2019
+ }
2020
+ if (outlen != hmac_len_ || mac_len != hmac_actual_len_) {
2021
+ r = kErrBadHMACLen;
2022
+ goto out;
2023
+ }
2024
+ #endif
2025
+
2026
+ // Compare MACs
2027
+ if (CRYPTO_memcmp(mac, calc_mac, hmac_actual_len_)) {
2028
+ r = kErrInvalidMAC;
2029
+ goto out;
2030
+ }
2031
+ }
2032
+
2033
+ if (is_etm_) {
2034
+ // `first_block` for ETM should just be the unencrypted packet length
2035
+ if (first_block_len != 4) {
2036
+ r = kErrBadBlockLen;
2037
+ goto out;
2038
+ }
2039
+
2040
+ // Decrypt packet
2041
+ if (EVP_DecryptUpdate(ctx_, packet, &outlen, packet, packet_len) != 1) {
2042
+ r = kErrOpenSSL;
2043
+ goto out;
2044
+ }
2045
+ if (static_cast<size_t>(outlen) != packet_len) {
2046
+ r = kErrPartialDecrypt;
2047
+ goto out;
2048
+ }
2049
+ }
2050
+
2051
+ out:
2052
+ return r;
2053
+ }
2054
+
2055
+ static NAN_METHOD(New) {
2056
+ MarkPopErrorOnReturn mark_pop_error_on_return;
2057
+
2058
+ if (!info[0]->IsString())
2059
+ return Nan::ThrowTypeError("Missing/Invalid decipher name");
2060
+
2061
+ if (!Buffer::HasInstance(info[1]))
2062
+ return Nan::ThrowTypeError("Missing/Invalid decipher key");
2063
+
2064
+ if (!Buffer::HasInstance(info[2]))
2065
+ return Nan::ThrowTypeError("Missing/Invalid decipher IV");
2066
+
2067
+ if (!info[3]->IsString())
2068
+ return Nan::ThrowTypeError("Missing/Invalid HMAC name");
2069
+
2070
+ if (!Buffer::HasInstance(info[4]))
2071
+ return Nan::ThrowTypeError("Missing/Invalid HMAC key");
2072
+
2073
+ if (!info[5]->IsBoolean())
2074
+ return Nan::ThrowTypeError("Missing/Invalid HMAC ETM flag");
2075
+
2076
+ if (!info[6]->IsUint32())
2077
+ return Nan::ThrowTypeError("Missing/Invalid HMAC ETM flag");
2078
+
2079
+ const Nan::Utf8String cipher_name(info[0]);
2080
+ const Nan::Utf8String mac_name(info[3]);
2081
+ int is_etm = (Nan::To<bool>(info[5]).FromJust() ? 1 : 0);
2082
+
2083
+ GenericDecipher* obj = new GenericDecipher();
2084
+ ErrorType r = obj->init(
2085
+ *cipher_name,
2086
+ reinterpret_cast<unsigned char*>(Buffer::Data(info[1])),
2087
+ Buffer::Length(info[1]),
2088
+ reinterpret_cast<unsigned char*>(Buffer::Data(info[2])),
2089
+ Buffer::Length(info[2]),
2090
+ *mac_name,
2091
+ reinterpret_cast<unsigned char*>(Buffer::Data(info[4])),
2092
+ Buffer::Length(info[4]),
2093
+ is_etm,
2094
+ Nan::To<uint32_t>(info[6]).FromJust()
2095
+ );
2096
+ if (r != kErrNone) {
2097
+ if (r == kErrOpenSSL) {
2098
+ char msg_buf[128] = {0};
2099
+ ERR_error_string_n(ERR_get_error(), msg_buf, sizeof(msg_buf));
2100
+ ERR_clear_error();
2101
+ obj->clear();
2102
+ delete obj;
2103
+ return Nan::ThrowError(msg_buf);
2104
+ }
2105
+ obj->clear();
2106
+ delete obj;
2107
+ switch (r) {
2108
+ case kErrBadKeyLen:
2109
+ return Nan::ThrowError("Invalid decipher key length");
2110
+ case kErrBadIVLen:
2111
+ return Nan::ThrowError("Invalid decipher IV length");
2112
+ case kErrBadCipherName:
2113
+ return Nan::ThrowError("Invalid decipher name");
2114
+ case kErrBadHMACName:
2115
+ return Nan::ThrowError("Invalid MAC name");
2116
+ case kErrBadInit:
2117
+ return Nan::ThrowError("Failed to properly initialize decipher");
2118
+ default:
2119
+ return Nan::ThrowError("Unknown init failure");
2120
+ }
2121
+ }
2122
+
2123
+ obj->Wrap(info.This());
2124
+ info.GetReturnValue().Set(info.This());
2125
+ }
2126
+
2127
+ static NAN_METHOD(DecryptBlock) {
2128
+ MarkPopErrorOnReturn mark_pop_error_on_return;
2129
+
2130
+ GenericDecipher* obj = ObjectWrap::Unwrap<GenericDecipher>(info.Holder());
2131
+
2132
+ if (!Buffer::HasInstance(info[0]))
2133
+ return Nan::ThrowTypeError("Missing/Invalid block");
2134
+
2135
+ ErrorType r = obj->decrypt_block(
2136
+ reinterpret_cast<unsigned char*>(Buffer::Data(info[0])),
2137
+ Buffer::Length(info[0])
2138
+ );
2139
+ switch (r) {
2140
+ case kErrNone:
2141
+ return;
2142
+ case kErrBadBlockLen:
2143
+ return Nan::ThrowError("Invalid block length");
2144
+ case kErrPartialDecrypt:
2145
+ return Nan::ThrowError("Failed to completely decrypt packet");
2146
+ case kErrOpenSSL: {
2147
+ char msg_buf[128] = {0};
2148
+ ERR_error_string_n(ERR_get_error(), msg_buf, sizeof(msg_buf));
2149
+ ERR_clear_error();
2150
+ return Nan::ThrowError(msg_buf);
2151
+ }
2152
+ default:
2153
+ return Nan::ThrowError("Unknown decrypt failure");
2154
+ }
2155
+ }
2156
+
2157
+ static NAN_METHOD(Decrypt) {
2158
+ MarkPopErrorOnReturn mark_pop_error_on_return;
2159
+
2160
+ GenericDecipher* obj = ObjectWrap::Unwrap<GenericDecipher>(info.Holder());
2161
+
2162
+ if (!Buffer::HasInstance(info[0]))
2163
+ return Nan::ThrowTypeError("Missing/Invalid packet");
2164
+
2165
+ if (!info[1]->IsUint32())
2166
+ return Nan::ThrowTypeError("Missing/Invalid sequence number");
2167
+
2168
+ if (!Buffer::HasInstance(info[2]))
2169
+ return Nan::ThrowTypeError("Missing/Invalid first block");
2170
+
2171
+ if (!Buffer::HasInstance(info[3]))
2172
+ return Nan::ThrowTypeError("Missing/Invalid MAC");
2173
+
2174
+ ErrorType r = obj->decrypt(
2175
+ reinterpret_cast<unsigned char*>(Buffer::Data(info[0])),
2176
+ Buffer::Length(info[0]),
2177
+ Nan::To<uint32_t>(info[1]).FromJust(),
2178
+ reinterpret_cast<unsigned char*>(Buffer::Data(info[2])),
2179
+ Buffer::Length(info[2]),
2180
+ reinterpret_cast<unsigned char*>(Buffer::Data(info[3])),
2181
+ Buffer::Length(info[3])
2182
+ );
2183
+ switch (r) {
2184
+ case kErrNone:
2185
+ return;
2186
+ case kErrBadBlockLen:
2187
+ return Nan::ThrowError("Invalid block length");
2188
+ case kErrPartialDecrypt:
2189
+ return Nan::ThrowError("Failed to completely decrypt packet");
2190
+ case kErrBadHMACLen:
2191
+ return Nan::ThrowError("Unexpected HMAC length");
2192
+ case kErrInvalidMAC:
2193
+ return Nan::ThrowError("Invalid MAC");
2194
+ case kErrOpenSSL: {
2195
+ char msg_buf[128] = {0};
2196
+ ERR_error_string_n(ERR_get_error(), msg_buf, sizeof(msg_buf));
2197
+ ERR_clear_error();
2198
+ return Nan::ThrowError(msg_buf);
2199
+ }
2200
+ default:
2201
+ return Nan::ThrowError("Unknown decrypt failure");
2202
+ }
2203
+ }
2204
+
2205
+ static NAN_METHOD(Free) {
2206
+ GenericDecipher* obj = ObjectWrap::Unwrap<GenericDecipher>(info.Holder());
2207
+ obj->clear();
2208
+ }
2209
+
2210
+ static inline v8::Eternal<v8::Function> & constructor() {
2211
+ static v8::Eternal<v8::Function> my_constructor;
2212
+ return my_constructor;
2213
+ }
2214
+
2215
+ EVP_CIPHER_CTX* ctx_;
2216
+ #if REAL_OPENSSL_MAJOR >= 3
2217
+ EVP_MAC* mac_;
2218
+ EVP_MAC_CTX* mac_ctx_base_;
2219
+ size_t hmac_len_;
2220
+ #else
2221
+ HMAC_CTX* ctx_hmac_;
2222
+ unsigned int hmac_len_;
2223
+ #endif
2224
+ unsigned int hmac_actual_len_;
2225
+ uint8_t is_etm_;
2226
+ uint8_t is_stream_;
2227
+ uint32_t block_size_;
2228
+ };
2229
+
2230
+
2231
+ NAN_MODULE_INIT(init) {
2232
+ // These are needed because node-gyp (as of this writing) does not use the
2233
+ // proper (OpenSSL) system headers when node was built against a shared
2234
+ // version of OpenSSL. Usually this isn't an issue because OSes that build
2235
+ // node in this way typically use the same version of OpenSSL as was bundled
2236
+ // with node for a particular node version for the best compatibility. However
2237
+ // with the inclusion of OpenSSL 3.x in node v17.x, some OSes are still
2238
+ // linking with a shared OpenSSL 1.x, which can cause both compilation and
2239
+ // runtime errors because of changes in OpenSSL's code.
2240
+ //
2241
+ // For that reason, we need to make sure we need to resolve some specific
2242
+ // symbols at runtime to workaround these buggy situations.
2243
+ #ifdef _WIN32
2244
+ # define load_sym(name) GetProcAddress(GetModuleHandle(NULL), name)
2245
+ #else
2246
+ # define load_sym(name) dlsym(RTLD_DEFAULT, name)
2247
+ #endif
2248
+ if (!ctx_iv_len) {
2249
+ ctx_iv_len = reinterpret_cast<ctx_iv_len_func>(
2250
+ load_sym("EVP_CIPHER_CTX_get_iv_length")
2251
+ );
2252
+ if (!ctx_iv_len) {
2253
+ ctx_iv_len = reinterpret_cast<ctx_iv_len_func>(
2254
+ load_sym("EVP_CIPHER_CTX_iv_length")
2255
+ );
2256
+ }
2257
+ }
2258
+ if (!ctx_key_len) {
2259
+ ctx_key_len = reinterpret_cast<ctx_key_len_func>(
2260
+ load_sym("EVP_CIPHER_CTX_get_key_length")
2261
+ );
2262
+ if (!ctx_key_len) {
2263
+ ctx_key_len = reinterpret_cast<ctx_key_len_func>(
2264
+ load_sym("EVP_CIPHER_CTX_key_length")
2265
+ );
2266
+ }
2267
+ }
2268
+ if (!cipher_flags) {
2269
+ cipher_flags = reinterpret_cast<cipher_flags_func>(
2270
+ load_sym("EVP_CIPHER_get_flags")
2271
+ );
2272
+ if (!cipher_flags) {
2273
+ cipher_flags = reinterpret_cast<cipher_flags_func>(
2274
+ load_sym("EVP_CIPHER_flags")
2275
+ );
2276
+ }
2277
+ }
2278
+ if (!ctx_get_block_size) {
2279
+ ctx_get_block_size = reinterpret_cast<ctx_get_block_size_func>(
2280
+ load_sym("EVP_CIPHER_CTX_get_block_size")
2281
+ );
2282
+ if (!ctx_get_block_size) {
2283
+ ctx_get_block_size = reinterpret_cast<ctx_get_block_size_func>(
2284
+ load_sym("EVP_CIPHER_CTX_block_size")
2285
+ );
2286
+ }
2287
+ }
2288
+
2289
+ ChaChaPolyCipher::Init(target);
2290
+ AESGCMCipher::Init(target);
2291
+ GenericCipher::Init(target);
2292
+
2293
+ ChaChaPolyDecipher::Init(target);
2294
+ AESGCMDecipher::Init(target);
2295
+ GenericDecipher::Init(target);
2296
+ }
2297
+
2298
+ DISABLE_WCAST_FUNCTION_TYPE
2299
+ NAN_MODULE_WORKER_ENABLED(sshcrypto, init)
2300
+ DISABLE_WCAST_FUNCTION_TYPE_END