javonet-nodejs-sdk 2.0.4 → 2.0.5

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 (323) hide show
  1. package/Binaries/Cpp/Windows/X64/JavonetCppRuntime.dll +0 -0
  2. package/Binaries/Go/Windows/X64/JavonetGoRuntime.dll +0 -0
  3. package/Binaries/Jvm/Linux/X64/JavonetJvmRuntime.jar +0 -0
  4. package/Binaries/Jvm/MacOs/X64/JavonetJvmRuntime.jar +0 -0
  5. package/Binaries/Jvm/Windows/X64/JavonetJvmRuntime.jar +0 -0
  6. package/Binaries/Native/MacOs/X64/libJavonetNodejsRuntimeNative.dylib +0 -0
  7. package/Binaries/Native/MacOs/X64/libJavonetPerlRuntimeNative.dylib +0 -0
  8. package/Binaries/Native/Windows/X64/JavonetClrRuntimeNative.dll +0 -0
  9. package/Binaries/Native/Windows/X64/JavonetCppRuntimeNative.dll +0 -0
  10. package/Binaries/Native/Windows/X64/JavonetGoRuntimeNative.dll +0 -0
  11. package/Binaries/Native/Windows/X64/JavonetJvmRuntimeNative.dll +0 -0
  12. package/Binaries/Native/Windows/X64/JavonetNetcoreRuntimeNative.dll +0 -0
  13. package/Binaries/Native/Windows/X64/JavonetNodejsRuntimeNative.dll +0 -0
  14. package/Binaries/Native/Windows/X64/JavonetPerlRuntimeNative.dll +0 -0
  15. package/Binaries/Native/Windows/X64/JavonetPythonRuntimeNative.dll +0 -0
  16. package/Binaries/Native/Windows/X64/JavonetRubyRuntimeNative.dll +0 -0
  17. package/Binaries/Native/Windows/X64/Utils.dll +0 -0
  18. package/Binaries/Nodejs/MacOs/X64/JavonetNodejsRuntimeAddon.node +0 -0
  19. package/Binaries/Nodejs/Windows/X64/JavonetNodejsRuntimeAddon.node +0 -0
  20. package/Binaries/Perl/Linux/X64/deps/lib/perl5/Package/DeprecationManager.pm +45 -38
  21. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Alien-Build-2.77/install.json +1 -1
  22. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Alien-Build-Plugin-Download-GitHub-0.10/install.json +1 -1
  23. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Alien-FFI-0.27/install.json +1 -1
  24. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Attribute-Util-1.07/install.json +1 -1
  25. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Capture-Tiny-0.48/install.json +1 -1
  26. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Class-Data-Inheritable-0.09/install.json +1 -1
  27. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Class-Load-0.25/install.json +1 -1
  28. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Class-Load-XS-0.10/install.json +1 -1
  29. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Clone-0.46/install.json +1 -1
  30. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Data-Cmp-0.010/install.json +1 -1
  31. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Data-OptList-0.113/install.json +1 -1
  32. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Data-UUID-1.226/install.json +1 -1
  33. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Devel-GlobalDestruction-0.14/install.json +1 -1
  34. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Devel-OverloadInfo-0.007/install.json +1 -1
  35. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Devel-StackTrace-2.04/install.json +1 -1
  36. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Dist-CheckConflicts-0.11/install.json +1 -1
  37. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Eval-Closure-0.14/install.json +1 -1
  38. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/ExtUtils-Config-0.008/install.json +1 -1
  39. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/ExtUtils-Helpers-0.026/install.json +1 -1
  40. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/ExtUtils-InstallPaths-0.012/install.json +1 -1
  41. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/FFI-CheckLib-0.31/install.json +1 -1
  42. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/FFI-Platypus-2.05/install.json +1 -1
  43. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/File-Listing-6.15/install.json +1 -1
  44. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/File-Which-1.27/install.json +1 -1
  45. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/File-chdir-0.1011/install.json +1 -1
  46. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/HTTP-Cookies-6.10/install.json +1 -1
  47. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/HTTP-Negotiate-6.01/install.json +1 -1
  48. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/IPC-System-Simple-1.30/install.json +1 -1
  49. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/MRO-Compat-0.15/install.json +1 -1
  50. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Module-Build-0.4232/install.json +1 -1
  51. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Module-Build-Tiny-0.039/install.json +1 -1
  52. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Module-Implementation-0.09/install.json +1 -1
  53. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Module-Runtime-0.016/install.json +1 -1
  54. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Module-Runtime-Conflicts-0.003/install.json +1 -1
  55. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Moose-2.2203/install.json +1 -1
  56. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Net-HTTP-6.22/install.json +1 -1
  57. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Nice-Try-v1.3.3/install.json +1 -1
  58. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/PPI-1.276/install.json +1 -1
  59. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/PPI-XS-0.910/install.json +1 -1
  60. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/{Package-DeprecationManager-0.17 → Package-DeprecationManager-0.18}/MYMETA.json +298 -181
  61. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Package-DeprecationManager-0.18/install.json +1 -0
  62. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Package-Stash-0.40/install.json +1 -1
  63. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Package-Stash-XS-0.30/install.json +1 -1
  64. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Params-Util-1.102/install.json +1 -1
  65. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Path-Tiny-0.144/install.json +1 -1
  66. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Scalar-List-Utils-1.63/install.json +1 -1
  67. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Scalar-Util-Numeric-0.40/install.json +1 -1
  68. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Scope-Guard-0.21/install.json +1 -1
  69. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Sub-Exporter-0.989/install.json +1 -1
  70. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Sub-Exporter-Progressive-0.001013/install.json +1 -1
  71. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Sub-Install-0.929/install.json +1 -1
  72. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Task-Weaken-1.06/install.json +1 -1
  73. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Test-Fatal-0.017/install.json +1 -1
  74. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Try-Tiny-0.31/install.json +1 -1
  75. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/WWW-RobotRules-6.02/install.json +1 -1
  76. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Want-0.29/install.json +1 -1
  77. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/YAML-1.30/install.json +1 -1
  78. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/aliased-0.34/install.json +1 -1
  79. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/autobox-v3.0.1/install.json +1 -1
  80. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/libwww-perl-6.67/install.json +1 -1
  81. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/Class/Load/XS/XS.so +0 -0
  82. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/Data/UUID/UUID.so +0 -0
  83. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/FFI/Platypus/Platypus.so +0 -0
  84. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/List/Util/Util.so +0 -0
  85. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/Moose/Moose.so +0 -0
  86. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/PPI/XS/XS.so +0 -0
  87. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/Package/Stash/XS/XS.so +0 -0
  88. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/Params/Util/Util.so +0 -0
  89. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/Want/Want.so +0 -0
  90. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/share/dist/FFI-Platypus/lib/libplfill.so +0 -0
  91. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/share/dist/FFI-Platypus/probe/bin/dlrun +0 -0
  92. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/perllocal.pod +114 -136
  93. package/Binaries/Perl/MacOs/X64/deps/bin/pkg-config.pl +1786 -0
  94. package/Binaries/Perl/MacOs/X64/deps/bin/ppkg-config +1786 -0
  95. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/IO/Socket/SSL/Intercept.pm +379 -0
  96. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/IO/Socket/SSL/PublicSuffix.pm +14537 -0
  97. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/IO/Socket/SSL/Utils.pm +792 -0
  98. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/IO/Socket/SSL.pm +3701 -0
  99. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/IO/Socket/SSL.pod +2241 -0
  100. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/Mojo/DOM58/Entities.pm +2378 -0
  101. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/Mojo/DOM58/_CSS.pm +409 -0
  102. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/Mojo/DOM58/_Collection.pm +172 -0
  103. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/Mojo/DOM58/_HTML.pm +337 -0
  104. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/Mojo/DOM58.pm +1784 -0
  105. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/Mozilla/CA/cacert.pem +3506 -0
  106. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/Mozilla/CA.pm +71 -0
  107. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/Package/DeprecationManager.pm +45 -38
  108. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/PkgConfig.pm +1786 -0
  109. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/.meta/Alien-Build-2.77/MYMETA.json +1 -0
  110. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/.meta/Alien-Build-2.77/install.json +1 -1
  111. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/.meta/Alien-Build-Plugin-Download-GitHub-0.10/install.json +1 -1
  112. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/.meta/Alien-FFI-0.27/MYMETA.json +12 -1
  113. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/.meta/Alien-FFI-0.27/install.json +1 -1
  114. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/.meta/Attribute-Util-1.07/install.json +1 -1
  115. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/.meta/Capture-Tiny-0.48/install.json +1 -1
  116. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/.meta/Class-Data-Inheritable-0.09/install.json +1 -1
  117. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/.meta/Class-Load-0.25/install.json +1 -1
  118. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/.meta/Class-Load-XS-0.10/install.json +1 -1
  119. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/.meta/Clone-0.46/install.json +1 -1
  120. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/.meta/Data-Cmp-0.010/install.json +1 -1
  121. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/.meta/Data-OptList-0.113/install.json +1 -1
  122. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/.meta/Data-UUID-1.226/install.json +1 -1
  123. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/.meta/Devel-GlobalDestruction-0.14/install.json +1 -1
  124. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/.meta/Devel-OverloadInfo-0.007/install.json +1 -1
  125. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/.meta/Devel-StackTrace-2.04/install.json +1 -1
  126. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/.meta/Dist-CheckConflicts-0.11/install.json +1 -1
  127. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/.meta/Encode-Locale-1.05/install.json +1 -1
  128. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/.meta/Eval-Closure-0.14/install.json +1 -1
  129. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/.meta/ExtUtils-Config-0.008/install.json +1 -1
  130. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/.meta/ExtUtils-Helpers-0.026/install.json +1 -1
  131. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/.meta/ExtUtils-InstallPaths-0.012/install.json +1 -1
  132. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/.meta/FFI-CheckLib-0.31/install.json +1 -1
  133. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/.meta/FFI-Platypus-2.05/MYMETA.json +1 -0
  134. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/.meta/FFI-Platypus-2.05/install.json +1 -1
  135. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/.meta/File-Listing-6.15/install.json +1 -1
  136. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/.meta/File-Which-1.27/install.json +1 -1
  137. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/.meta/File-chdir-0.1011/install.json +1 -1
  138. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/.meta/HTML-Parser-3.81/install.json +1 -1
  139. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/.meta/HTML-Tagset-3.20/install.json +1 -1
  140. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/.meta/HTTP-Cookies-6.10/install.json +1 -1
  141. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/.meta/HTTP-Date-6.05/install.json +1 -1
  142. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/.meta/HTTP-Message-6.44/install.json +1 -1
  143. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/.meta/HTTP-Negotiate-6.01/install.json +1 -1
  144. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/.meta/IO-HTML-1.004/install.json +1 -1
  145. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/.meta/IO-Socket-SSL-2.081/MYMETA.json +57 -0
  146. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/.meta/IO-Socket-SSL-2.081/install.json +1 -0
  147. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/.meta/IPC-System-Simple-1.30/install.json +1 -1
  148. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/.meta/LWP-MediaTypes-6.04/install.json +1 -1
  149. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/.meta/MRO-Compat-0.15/install.json +1 -1
  150. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/.meta/Module-Build-0.4232/install.json +1 -1
  151. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/.meta/Module-Build-Tiny-0.039/install.json +1 -1
  152. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/.meta/Module-Implementation-0.09/install.json +1 -1
  153. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/.meta/Module-Runtime-0.016/install.json +1 -1
  154. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/.meta/Module-Runtime-Conflicts-0.003/install.json +1 -1
  155. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/.meta/Mojo-DOM58-3.001/MYMETA.json +107 -0
  156. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/.meta/Mojo-DOM58-3.001/install.json +1 -0
  157. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/.meta/Moose-2.2203/install.json +1 -1
  158. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/.meta/Mozilla-CA-20221114/MYMETA.json +61 -0
  159. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/.meta/Mozilla-CA-20221114/install.json +1 -0
  160. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/.meta/Net-HTTP-6.22/install.json +1 -1
  161. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/.meta/Net-SSLeay-1.92/MYMETA.json +87 -0
  162. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/.meta/Net-SSLeay-1.92/install.json +1 -0
  163. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/.meta/Nice-Try-v1.3.3/install.json +1 -1
  164. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/.meta/PPI-1.276/install.json +1 -1
  165. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/.meta/PPI-XS-0.910/install.json +1 -1
  166. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/.meta/{Package-DeprecationManager-0.17 → Package-DeprecationManager-0.18}/MYMETA.json +298 -181
  167. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/.meta/Package-DeprecationManager-0.18/install.json +1 -0
  168. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/.meta/Package-Stash-0.40/install.json +1 -1
  169. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/.meta/Package-Stash-XS-0.30/install.json +1 -1
  170. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/.meta/Params-Util-1.102/install.json +1 -1
  171. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/.meta/Path-Tiny-0.144/install.json +1 -1
  172. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/.meta/PkgConfig-0.25026/MYMETA.json +61 -0
  173. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/.meta/PkgConfig-0.25026/install.json +1 -0
  174. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/.meta/Scalar-Util-Numeric-0.40/install.json +1 -1
  175. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/.meta/Scope-Guard-0.21/install.json +1 -1
  176. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/.meta/Sub-Exporter-0.989/install.json +1 -1
  177. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/.meta/Sub-Exporter-Progressive-0.001013/install.json +1 -1
  178. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/.meta/Sub-Install-0.929/install.json +1 -1
  179. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/.meta/Task-Weaken-1.06/install.json +1 -1
  180. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/.meta/Test-Fatal-0.017/install.json +1 -1
  181. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/.meta/TimeDate-2.33/install.json +1 -1
  182. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/.meta/Try-Tiny-0.31/install.json +1 -1
  183. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/.meta/URI-5.17/install.json +1 -1
  184. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/.meta/WWW-RobotRules-6.02/install.json +1 -1
  185. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/.meta/Want-0.29/install.json +1 -1
  186. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/.meta/YAML-1.30/install.json +1 -1
  187. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/.meta/aliased-0.34/install.json +1 -1
  188. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/.meta/autobox-v3.0.1/install.json +1 -1
  189. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/.meta/libwww-perl-6.67/install.json +1 -1
  190. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Net/SSLeay/Handle.pm +409 -0
  191. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Net/SSLeay.pm +1905 -0
  192. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Net/SSLeay.pod +10434 -0
  193. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Alien/FFI/.packlist +11 -0
  194. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/FFI/Platypus/Platypus.bundle +0 -0
  195. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/IO/Socket/SSL/.packlist +9 -0
  196. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Mojo/DOM58/.packlist +7 -0
  197. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Mozilla/CA/.packlist +3 -0
  198. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Net/SSLeay/.packlist +82 -0
  199. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Net/SSLeay/SSLeay.bundle +0 -0
  200. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Net/SSLeay/autosplit.ix +80 -0
  201. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Net/SSLeay/debug_read.al +22 -0
  202. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Net/SSLeay/do_https.al +19 -0
  203. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Net/SSLeay/do_https2.al +13 -0
  204. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Net/SSLeay/do_https3.al +13 -0
  205. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Net/SSLeay/do_https4.al +12 -0
  206. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Net/SSLeay/do_httpx2.al +18 -0
  207. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Net/SSLeay/do_httpx3.al +43 -0
  208. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Net/SSLeay/do_httpx4.al +18 -0
  209. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Net/SSLeay/dump_peer_certificate.al +29 -0
  210. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Net/SSLeay/get_http.al +9 -0
  211. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Net/SSLeay/get_http3.al +9 -0
  212. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Net/SSLeay/get_http4.al +9 -0
  213. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Net/SSLeay/get_https.al +9 -0
  214. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Net/SSLeay/get_https3.al +9 -0
  215. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Net/SSLeay/get_https4.al +9 -0
  216. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Net/SSLeay/get_httpx.al +9 -0
  217. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Net/SSLeay/get_httpx3.al +9 -0
  218. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Net/SSLeay/get_httpx4.al +9 -0
  219. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Net/SSLeay/head_http.al +10 -0
  220. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Net/SSLeay/head_http3.al +10 -0
  221. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Net/SSLeay/head_http4.al +12 -0
  222. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Net/SSLeay/head_https.al +10 -0
  223. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Net/SSLeay/head_https3.al +10 -0
  224. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Net/SSLeay/head_https4.al +12 -0
  225. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Net/SSLeay/head_httpx.al +10 -0
  226. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Net/SSLeay/head_httpx3.al +10 -0
  227. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Net/SSLeay/head_httpx4.al +13 -0
  228. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Net/SSLeay/http_cat.al +34 -0
  229. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Net/SSLeay/https_cat.al +95 -0
  230. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Net/SSLeay/httpx_cat.al +18 -0
  231. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Net/SSLeay/initialize.al +27 -0
  232. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Net/SSLeay/make_form.al +25 -0
  233. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Net/SSLeay/make_headers.al +21 -0
  234. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Net/SSLeay/new_x_ctx.al +51 -0
  235. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Net/SSLeay/open_proxy_tcp_connection.al +31 -0
  236. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Net/SSLeay/open_tcp_connection.al +40 -0
  237. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Net/SSLeay/post_http.al +9 -0
  238. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Net/SSLeay/post_http3.al +9 -0
  239. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Net/SSLeay/post_http4.al +9 -0
  240. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Net/SSLeay/post_https.al +9 -0
  241. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Net/SSLeay/post_https3.al +9 -0
  242. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Net/SSLeay/post_https4.al +9 -0
  243. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Net/SSLeay/post_httpx.al +9 -0
  244. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Net/SSLeay/post_httpx3.al +9 -0
  245. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Net/SSLeay/post_httpx4.al +9 -0
  246. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Net/SSLeay/put_http.al +9 -0
  247. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Net/SSLeay/put_http3.al +9 -0
  248. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Net/SSLeay/put_http4.al +9 -0
  249. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Net/SSLeay/put_https.al +9 -0
  250. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Net/SSLeay/put_https3.al +9 -0
  251. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Net/SSLeay/put_https4.al +9 -0
  252. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Net/SSLeay/put_httpx.al +9 -0
  253. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Net/SSLeay/put_httpx3.al +9 -0
  254. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Net/SSLeay/put_httpx4.al +9 -0
  255. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Net/SSLeay/randomize.al +31 -0
  256. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Net/SSLeay/set_cert_and_key.al +23 -0
  257. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Net/SSLeay/set_proxy.al +17 -0
  258. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Net/SSLeay/set_server_cert_and_key.al +14 -0
  259. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Net/SSLeay/ssl_read_CRLF.al +10 -0
  260. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Net/SSLeay/ssl_read_all.al +36 -0
  261. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Net/SSLeay/ssl_read_until.al +94 -0
  262. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Net/SSLeay/ssl_write_CRLF.al +23 -0
  263. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Net/SSLeay/ssl_write_all.al +149 -0
  264. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Net/SSLeay/sslcat.al +98 -0
  265. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Net/SSLeay/tcp_read_CRLF.al +11 -0
  266. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Net/SSLeay/tcp_read_all.al +26 -0
  267. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Net/SSLeay/tcp_read_until.al +33 -0
  268. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Net/SSLeay/tcp_write_CRLF.al +23 -0
  269. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Net/SSLeay/tcp_write_all.al +36 -0
  270. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Net/SSLeay/tcpcat.al +37 -0
  271. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Net/SSLeay/tcpxcat.al +17 -0
  272. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Net/SSLeay/want_X509_lookup.al +15 -0
  273. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Net/SSLeay/want_nothing.al +11 -0
  274. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Net/SSLeay/want_read.al +9 -0
  275. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Net/SSLeay/want_write.al +9 -0
  276. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/PkgConfig/.packlist +6 -0
  277. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/share/dist/Alien-FFI/_alien/alien.json +9 -8
  278. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/share/dist/Alien-FFI/include/ffi.h +531 -0
  279. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/share/dist/Alien-FFI/include/ffitarget.h +164 -0
  280. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/share/dist/Alien-FFI/lib/libffi.a +0 -0
  281. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/share/dist/Alien-FFI/lib/libffi.la +41 -0
  282. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/share/dist/Alien-FFI/lib/pkgconfig/libffi.pc +11 -0
  283. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/share/dist/Alien-FFI/share/info/dir +18 -0
  284. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/share/dist/Alien-FFI/share/info/libffi.info +1060 -0
  285. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/share/dist/Alien-FFI/share/man/man3/ffi.3 +41 -0
  286. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/share/dist/Alien-FFI/share/man/man3/ffi_call.3 +103 -0
  287. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/share/dist/Alien-FFI/share/man/man3/ffi_prep_cif.3 +68 -0
  288. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/share/dist/Alien-FFI/share/man/man3/ffi_prep_cif_var.3 +73 -0
  289. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/share/dist/FFI-Platypus/lib/libplfill.dylib +0 -0
  290. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/perllocal.pod +216 -128
  291. package/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/.meta/Alien-Build-2.77/install.json +1 -1
  292. package/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/.meta/Alien-Build-Plugin-Download-GitHub-0.10/install.json +1 -1
  293. package/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/.meta/Alien-FFI-0.27/install.json +1 -1
  294. package/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/.meta/Attribute-Util-1.07/install.json +1 -1
  295. package/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/.meta/Data-Cmp-0.010/install.json +1 -1
  296. package/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/.meta/Data-UUID-1.226/install.json +1 -1
  297. package/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/.meta/Nice-Try-v1.3.3/install.json +1 -1
  298. package/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/.meta/PPI-1.276/install.json +1 -1
  299. package/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/.meta/PPI-XS-0.910/install.json +1 -1
  300. package/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/.meta/Scalar-Util-Numeric-0.40/install.json +1 -1
  301. package/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/.meta/Want-0.29/install.json +1 -1
  302. package/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/.meta/autobox-v3.0.1/install.json +1 -1
  303. package/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/auto/Data/UUID/UUID.xs.dll +0 -0
  304. package/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/auto/PPI/XS/XS.xs.dll +0 -0
  305. package/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/auto/Scalar/Util/Numeric/Numeric.xs.dll +0 -0
  306. package/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/auto/Want/Want.xs.dll +0 -0
  307. package/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/auto/autobox/autobox.xs.dll +0 -0
  308. package/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/perllocal.pod +23 -23
  309. package/addon/JavonetNodejsRuntimeAddon.cpp +42 -15
  310. package/addon/JavonetNodejsRuntimeAddon.h +1 -0
  311. package/package.json +5 -4
  312. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Package-DeprecationManager-0.17/install.json +0 -1
  313. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Sub-Name-0.26/MYMETA.json +0 -1394
  314. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Sub-Name-0.26/install.json +0 -1
  315. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Sub/Name.pm +0 -202
  316. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/Sub/Name/.packlist +0 -3
  317. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/Sub/Name/Name.so +0 -0
  318. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/.meta/Package-DeprecationManager-0.17/install.json +0 -1
  319. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/.meta/Sub-Name-0.26/MYMETA.json +0 -1394
  320. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/.meta/Sub-Name-0.26/install.json +0 -1
  321. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Sub/Name.pm +0 -202
  322. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Sub/Name/.packlist +0 -3
  323. package/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Sub/Name/Name.bundle +0 -0
@@ -0,0 +1,792 @@
1
+
2
+ package IO::Socket::SSL::Utils;
3
+ use strict;
4
+ use warnings;
5
+ use Carp 'croak';
6
+ use Net::SSLeay;
7
+
8
+ # old versions of Exporter do not export 'import' yet
9
+ require Exporter;
10
+ *import = \&Exporter::import;
11
+
12
+ our $VERSION = '2.015';
13
+ our @EXPORT = qw(
14
+ PEM_file2cert PEM_file2certs PEM_string2cert PEM_cert2file PEM_certs2file PEM_cert2string
15
+ PEM_file2key PEM_string2key PEM_key2file PEM_key2string
16
+ KEY_free CERT_free
17
+ KEY_create_rsa CERT_asHash CERT_create
18
+ );
19
+
20
+ sub PEM_file2cert {
21
+ my $file = shift;
22
+ my $bio = Net::SSLeay::BIO_new_file($file,'r') or
23
+ croak "cannot read $file: $!";
24
+ my $cert = Net::SSLeay::PEM_read_bio_X509($bio);
25
+ Net::SSLeay::BIO_free($bio);
26
+ $cert or croak "cannot parse $file as PEM X509 cert: ".
27
+ Net::SSLeay::ERR_error_string(Net::SSLeay::ERR_get_error());
28
+ return $cert;
29
+ }
30
+
31
+ sub PEM_cert2file {
32
+ my ($cert,$file) = @_;
33
+ my $string = Net::SSLeay::PEM_get_string_X509($cert)
34
+ or croak("cannot get string from cert");
35
+ open( my $fh,'>',$file ) or croak("cannot write $file: $!");
36
+ print $fh $string;
37
+ }
38
+
39
+ use constant PEM_R_NO_START_LINE => 108;
40
+ sub PEM_file2certs {
41
+ my $file = shift;
42
+ my $bio = Net::SSLeay::BIO_new_file($file,'r') or
43
+ croak "cannot read $file: $!";
44
+ my @certs;
45
+ while (1) {
46
+ if (my $cert = Net::SSLeay::PEM_read_bio_X509($bio)) {
47
+ push @certs, $cert;
48
+ } else {
49
+ Net::SSLeay::BIO_free($bio);
50
+ my $error = Net::SSLeay::ERR_get_error();
51
+ last if ($error & 0xfff) == PEM_R_NO_START_LINE && @certs;
52
+ croak "cannot parse $file as PEM X509 cert: " .
53
+ Net::SSLeay::ERR_error_string($error);
54
+ }
55
+ }
56
+ return @certs;
57
+ }
58
+
59
+ sub PEM_certs2file {
60
+ my $file = shift;
61
+ open( my $fh,'>',$file ) or croak("cannot write $file: $!");
62
+ for my $cert (@_) {
63
+ my $string = Net::SSLeay::PEM_get_string_X509($cert)
64
+ or croak("cannot get string from cert");
65
+ print $fh $string;
66
+ }
67
+ }
68
+
69
+
70
+ sub PEM_string2cert {
71
+ my $string = shift;
72
+ my $bio = Net::SSLeay::BIO_new( Net::SSLeay::BIO_s_mem());
73
+ Net::SSLeay::BIO_write($bio,$string);
74
+ my $cert = Net::SSLeay::PEM_read_bio_X509($bio);
75
+ Net::SSLeay::BIO_free($bio);
76
+ $cert or croak "cannot parse string as PEM X509 cert: ".
77
+ Net::SSLeay::ERR_error_string(Net::SSLeay::ERR_get_error());
78
+ return $cert;
79
+ }
80
+
81
+ sub PEM_cert2string {
82
+ my $cert = shift;
83
+ return Net::SSLeay::PEM_get_string_X509($cert)
84
+ || croak("cannot get string from cert");
85
+ }
86
+
87
+ sub PEM_file2key {
88
+ my $file = shift;
89
+ my $bio = Net::SSLeay::BIO_new_file($file,'r') or
90
+ croak "cannot read $file: $!";
91
+ my $key = Net::SSLeay::PEM_read_bio_PrivateKey($bio);
92
+ Net::SSLeay::BIO_free($bio);
93
+ $key or croak "cannot parse $file as PEM private key: ".
94
+ Net::SSLeay::ERR_error_string(Net::SSLeay::ERR_get_error());
95
+ return $key;
96
+ }
97
+
98
+ sub PEM_key2file {
99
+ my ($key,$file) = @_;
100
+ my $string = Net::SSLeay::PEM_get_string_PrivateKey($key)
101
+ or croak("cannot get string from key");
102
+ open( my $fh,'>',$file ) or croak("cannot write $file: $!");
103
+ print $fh $string;
104
+ }
105
+
106
+ sub PEM_string2key {
107
+ my $string = shift;
108
+ my $bio = Net::SSLeay::BIO_new( Net::SSLeay::BIO_s_mem());
109
+ Net::SSLeay::BIO_write($bio,$string);
110
+ my $key = Net::SSLeay::PEM_read_bio_PrivateKey($bio);
111
+ Net::SSLeay::BIO_free($bio);
112
+ $key or croak "cannot parse string as PEM private key: ".
113
+ Net::SSLeay::ERR_error_string(Net::SSLeay::ERR_get_error());
114
+ return $key;
115
+ }
116
+
117
+ sub PEM_key2string {
118
+ my $key = shift;
119
+ return Net::SSLeay::PEM_get_string_PrivateKey($key)
120
+ || croak("cannot get string from key");
121
+ }
122
+
123
+ sub CERT_free {
124
+ Net::SSLeay::X509_free($_) for @_;
125
+ }
126
+
127
+ sub KEY_free {
128
+ Net::SSLeay::EVP_PKEY_free($_) for @_;
129
+ }
130
+
131
+ sub KEY_create_rsa {
132
+ my $bits = shift || 2048;
133
+ my $key = Net::SSLeay::EVP_PKEY_new();
134
+ my $rsa = Net::SSLeay::RSA_generate_key($bits, 0x10001); # 0x10001 = RSA_F4
135
+ Net::SSLeay::EVP_PKEY_assign_RSA($key,$rsa);
136
+ return $key;
137
+ }
138
+
139
+ if (defined &Net::SSLeay::EC_KEY_generate_key) {
140
+ push @EXPORT,'KEY_create_ec';
141
+ *KEY_create_ec = sub {
142
+ my $curve = shift || 'prime256v1';
143
+ my $key = Net::SSLeay::EVP_PKEY_new();
144
+ my $ec = Net::SSLeay::EC_KEY_generate_key($curve);
145
+ Net::SSLeay::EVP_PKEY_assign_EC_KEY($key,$ec);
146
+ return $key;
147
+ }
148
+ }
149
+
150
+ # extract information from cert
151
+ my %gen2i = qw( OTHERNAME 0 EMAIL 1 DNS 2 X400 3 DIRNAME 4 EDIPARTY 5 URI 6 IP 7 RID 8 );
152
+ my %i2gen = reverse %gen2i;
153
+ sub CERT_asHash {
154
+ my $cert = shift;
155
+ my $digest_name = shift || 'sha256';
156
+
157
+ my %hash = (
158
+ version => Net::SSLeay::X509_get_version($cert),
159
+ not_before => _asn1t2t(Net::SSLeay::X509_get_notBefore($cert)),
160
+ not_after => _asn1t2t(Net::SSLeay::X509_get_notAfter($cert)),
161
+ serial => Net::SSLeay::P_ASN1_INTEGER_get_dec(
162
+ Net::SSLeay::X509_get_serialNumber($cert)),
163
+ signature_alg => Net::SSLeay::OBJ_obj2txt (
164
+ Net::SSLeay::P_X509_get_signature_alg($cert)),
165
+ crl_uri => [ Net::SSLeay::P_X509_get_crl_distribution_points($cert) ],
166
+ keyusage => [ Net::SSLeay::P_X509_get_key_usage($cert) ],
167
+ extkeyusage => {
168
+ oid => [ Net::SSLeay::P_X509_get_ext_key_usage($cert,0) ],
169
+ nid => [ Net::SSLeay::P_X509_get_ext_key_usage($cert,1) ],
170
+ sn => [ Net::SSLeay::P_X509_get_ext_key_usage($cert,2) ],
171
+ ln => [ Net::SSLeay::P_X509_get_ext_key_usage($cert,3) ],
172
+ },
173
+ "pubkey_digest_$digest_name" => Net::SSLeay::X509_pubkey_digest(
174
+ $cert,_digest($digest_name)),
175
+ "x509_digest_$digest_name" => Net::SSLeay::X509_digest(
176
+ $cert,_digest($digest_name)),
177
+ "fingerprint_$digest_name" => Net::SSLeay::X509_get_fingerprint(
178
+ $cert,$digest_name),
179
+ );
180
+
181
+ for([ subject => Net::SSLeay::X509_get_subject_name($cert) ],
182
+ [ issuer => Net::SSLeay::X509_get_issuer_name($cert) ]) {
183
+ my ($what,$subj) = @$_;
184
+ my %subj;
185
+ for ( 0..Net::SSLeay::X509_NAME_entry_count($subj)-1 ) {
186
+ my $e = Net::SSLeay::X509_NAME_get_entry($subj,$_);
187
+ my $k = Net::SSLeay::OBJ_obj2txt(
188
+ Net::SSLeay::X509_NAME_ENTRY_get_object($e));
189
+ my $v = Net::SSLeay::P_ASN1_STRING_get(
190
+ Net::SSLeay::X509_NAME_ENTRY_get_data($e));
191
+ if (!exists $subj{$k}) {
192
+ $subj{$k} = $v;
193
+ } elsif (!ref $subj{$k}) {
194
+ $subj{$k} = [ $subj{$k}, $v ];
195
+ } else {
196
+ push @{$subj{$k}}, $v;
197
+ }
198
+ }
199
+ $hash{$what} = \%subj;
200
+ }
201
+
202
+
203
+ if ( my @names = Net::SSLeay::X509_get_subjectAltNames($cert) ) {
204
+ my $alt = $hash{subjectAltNames} = [];
205
+ while (my ($t,$v) = splice(@names,0,2)) {
206
+ $t = $i2gen{$t} || die "unknown type $t in subjectAltName";
207
+ if ( $t eq 'IP' ) {
208
+ if (length($v) == 4) {
209
+ $v = join('.',unpack("CCCC",$v));
210
+ } elsif ( length($v) == 16 ) {
211
+ my @v = unpack("nnnnnnnn",$v);
212
+ my ($best0,$last0);
213
+ for(my $i=0;$i<@v;$i++) {
214
+ if ($v[$i] == 0) {
215
+ if ($last0) {
216
+ $last0->[1] = $i;
217
+ $last0->[2]++;
218
+ $best0 = $last0 if ++$last0->[2]>$best0->[2];
219
+ } else {
220
+ $last0 = [ $i,$i,0 ];
221
+ $best0 ||= $last0;
222
+ }
223
+ } else {
224
+ $last0 = undef;
225
+ }
226
+ }
227
+ if ($best0) {
228
+ $v = '';
229
+ $v .= join(':', map { sprintf( "%x",$_) } @v[0..$best0->[0]-1]) if $best0->[0]>0;
230
+ $v .= '::';
231
+ $v .= join(':', map { sprintf( "%x",$_) } @v[$best0->[1]+1..$#v]) if $best0->[1]<$#v;
232
+ } else {
233
+ $v = join(':', map { sprintf( "%x",$_) } @v);
234
+ }
235
+ }
236
+ }
237
+ push @$alt,[$t,$v]
238
+ }
239
+ }
240
+
241
+ my @ext;
242
+ for( 0..Net::SSLeay::X509_get_ext_count($cert)-1 ) {
243
+ my $e = Net::SSLeay::X509_get_ext($cert,$_);
244
+ my $o = Net::SSLeay::X509_EXTENSION_get_object($e);
245
+ my $nid = Net::SSLeay::OBJ_obj2nid($o);
246
+ push @ext, {
247
+ oid => Net::SSLeay::OBJ_obj2txt($o),
248
+ nid => ( $nid > 0 ) ? $nid : undef,
249
+ sn => ( $nid > 0 ) ? Net::SSLeay::OBJ_nid2sn($nid) : undef,
250
+ critical => Net::SSLeay::X509_EXTENSION_get_critical($e),
251
+ data => Net::SSLeay::X509V3_EXT_print($e),
252
+ }
253
+ }
254
+ $hash{ext} = \@ext;
255
+
256
+ if ( defined(&Net::SSLeay::P_X509_get_ocsp_uri)) {
257
+ $hash{ocsp_uri} = [ Net::SSLeay::P_X509_get_ocsp_uri($cert) ];
258
+ } else {
259
+ $hash{ocsp_uri} = [];
260
+ for( @ext ) {
261
+ $_->{sn} or next;
262
+ $_->{sn} eq 'authorityInfoAccess' or next;
263
+ push @{ $hash{ocsp_uri}}, $_->{data} =~m{\bOCSP - URI:(\S+)}g;
264
+ }
265
+ }
266
+
267
+ return \%hash;
268
+ }
269
+
270
+ sub CERT_create {
271
+ my %args = @_%2 ? %{ shift() } : @_;
272
+
273
+ my $cert = Net::SSLeay::X509_new();
274
+ my $digest_name = delete $args{digest} || 'sha256';
275
+
276
+ Net::SSLeay::ASN1_INTEGER_set(
277
+ Net::SSLeay::X509_get_serialNumber($cert),
278
+ delete $args{serial} || rand(2**32),
279
+ );
280
+
281
+ # version default to 2 (V3)
282
+ Net::SSLeay::X509_set_version($cert,
283
+ delete $args{version} || 2 );
284
+
285
+ # not_before default to now
286
+ Net::SSLeay::ASN1_TIME_set(
287
+ Net::SSLeay::X509_get_notBefore($cert),
288
+ delete $args{not_before} || time()
289
+ );
290
+
291
+ # not_after default to now+365 days
292
+ Net::SSLeay::ASN1_TIME_set(
293
+ Net::SSLeay::X509_get_notAfter($cert),
294
+ delete $args{not_after} || time() + 365*86400
295
+ );
296
+
297
+ # set subject
298
+ my $subj_e = Net::SSLeay::X509_get_subject_name($cert);
299
+ my $subj = delete $args{subject} || {
300
+ organizationName => 'IO::Socket::SSL',
301
+ commonName => 'IO::Socket::SSL Test'
302
+ };
303
+
304
+ while ( my ($k,$v) = each %$subj ) {
305
+ # Not everything we get is nice - try with MBSTRING_UTF8 first and if it
306
+ # fails try V_ASN1_T61STRING and finally V_ASN1_OCTET_STRING
307
+ for (ref($v) ? @$v : ($v)) {
308
+ Net::SSLeay::X509_NAME_add_entry_by_txt($subj_e,$k,0x1000,$_,-1,0)
309
+ or Net::SSLeay::X509_NAME_add_entry_by_txt($subj_e,$k,20,$_,-1,0)
310
+ or Net::SSLeay::X509_NAME_add_entry_by_txt($subj_e,$k,4,$_,-1,0)
311
+ or croak("failed to add entry for $k - ".
312
+ Net::SSLeay::ERR_error_string(Net::SSLeay::ERR_get_error()));
313
+ }
314
+ }
315
+
316
+ my @ext = (
317
+ &Net::SSLeay::NID_subject_key_identifier => 'hash',
318
+ &Net::SSLeay::NID_authority_key_identifier => 'keyid',
319
+ );
320
+ if ( my $altsubj = delete $args{subjectAltNames} ) {
321
+ push @ext,
322
+ &Net::SSLeay::NID_subject_alt_name =>
323
+ join(',', map { "$_->[0]:$_->[1]" } @$altsubj)
324
+ }
325
+
326
+ my $key = delete $args{key} || KEY_create_rsa();
327
+ Net::SSLeay::X509_set_pubkey($cert,$key);
328
+
329
+ my $is = delete $args{issuer};
330
+ my $issuer_cert = delete $args{issuer_cert} || $is && $is->[0] || $cert;
331
+ my $issuer_key = delete $args{issuer_key} || $is && $is->[1] || $key;
332
+
333
+ my %purpose;
334
+ if (my $p = delete $args{purpose}) {
335
+ if (!ref($p)) {
336
+ $purpose{lc($2)} = (!$1 || $1 eq '+') ? 1:0
337
+ while $p =~m{([+-]?)(\w+)}g;
338
+ } elsif (ref($p) eq 'ARRAY') {
339
+ for(@$p) {
340
+ m{^([+-]?)(\w+)$} or die "invalid entry in purpose: $_";
341
+ $purpose{lc($2)} = (!$1 || $1 eq '+') ? 1:0
342
+ }
343
+ } else {
344
+ while( my ($k,$v) = each %$p) {
345
+ $purpose{lc($k)} = ($v && $v ne '-')?1:0;
346
+ }
347
+ }
348
+ }
349
+ if (delete $args{CA}) {
350
+ # add defaults for CA
351
+ %purpose = (
352
+ ca => 1, sslca => 1, emailca => 1, objca => 1,
353
+ %purpose
354
+ );
355
+ }
356
+ if (!%purpose) {
357
+ %purpose = (server => 1, client => 1);
358
+ }
359
+
360
+ my (%key_usage,%ext_key_usage,%cert_type,%basic_constraints);
361
+
362
+ my %dS = ( digitalSignature => \%key_usage );
363
+ my %kE = ( keyEncipherment => \%key_usage );
364
+ my %CA = ( 'CA:TRUE' => \%basic_constraints, %dS, keyCertSign => \%key_usage );
365
+ my @disable;
366
+ for(
367
+ [ client => { %dS, %kE, clientAuth => \%ext_key_usage, client => \%cert_type } ],
368
+ [ server => { %dS, %kE, serverAuth => \%ext_key_usage, server => \%cert_type } ],
369
+ [ email => { %dS, %kE, emailProtection => \%ext_key_usage, email => \%cert_type } ],
370
+ [ objsign => { %dS, %kE, codeSigning => \%ext_key_usage, objsign => \%cert_type } ],
371
+
372
+ [ CA => { %CA }],
373
+ [ sslCA => { %CA, sslCA => \%cert_type }],
374
+ [ emailCA => { %CA, emailCA => \%cert_type }],
375
+ [ objCA => { %CA, objCA => \%cert_type }],
376
+
377
+ [ emailProtection => { %dS, %kE, emailProtection => \%ext_key_usage, email => \%cert_type } ],
378
+ [ codeSigning => { %dS, %kE, codeSigning => \%ext_key_usage, objsign => \%cert_type } ],
379
+
380
+ [ timeStamping => { timeStamping => \%ext_key_usage } ],
381
+ [ digitalSignature => { digitalSignature => \%key_usage } ],
382
+ [ nonRepudiation => { nonRepudiation => \%key_usage } ],
383
+ [ keyEncipherment => { keyEncipherment => \%key_usage } ],
384
+ [ dataEncipherment => { dataEncipherment => \%key_usage } ],
385
+ [ keyAgreement => { keyAgreement => \%key_usage } ],
386
+ [ keyCertSign => { keyCertSign => \%key_usage } ],
387
+ [ cRLSign => { cRLSign => \%key_usage } ],
388
+ [ encipherOnly => { encipherOnly => \%key_usage } ],
389
+ [ decipherOnly => { decipherOnly => \%key_usage } ],
390
+ [ clientAuth => { clientAuth => \%ext_key_usage } ],
391
+ [ serverAuth => { serverAuth => \%ext_key_usage } ],
392
+ ) {
393
+ exists $purpose{lc($_->[0])} or next;
394
+ if (delete $purpose{lc($_->[0])}) {
395
+ while (my($k,$h) = each %{$_->[1]}) {
396
+ $h->{$k} = 1;
397
+ }
398
+ } else {
399
+ push @disable, $_->[1];
400
+ }
401
+ }
402
+ die "unknown purpose ".join(",",keys %purpose) if %purpose;
403
+ for(@disable) {
404
+ while (my($k,$h) = each %$_) {
405
+ delete $h->{$k};
406
+ }
407
+ }
408
+
409
+ if (%basic_constraints) {
410
+ push @ext,&Net::SSLeay::NID_basic_constraints,
411
+ => join(",",'critical', sort keys %basic_constraints);
412
+ } else {
413
+ push @ext, &Net::SSLeay::NID_basic_constraints => 'critical,CA:FALSE';
414
+ }
415
+ push @ext,&Net::SSLeay::NID_key_usage
416
+ => join(",",'critical', sort keys %key_usage) if %key_usage;
417
+ push @ext,&Net::SSLeay::NID_netscape_cert_type
418
+ => join(",",sort keys %cert_type) if %cert_type;
419
+ push @ext,&Net::SSLeay::NID_ext_key_usage
420
+ => join(",",sort keys %ext_key_usage) if %ext_key_usage;
421
+ Net::SSLeay::P_X509_add_extensions($cert, $issuer_cert, @ext);
422
+
423
+ my %have_ext;
424
+ for(my $i=0;$i<@ext;$i+=2) {
425
+ $have_ext{ $ext[$i] }++
426
+ }
427
+ for my $ext (@{ $args{ext} || [] }) {
428
+ my $nid = $ext->{nid}
429
+ || $ext->{sn} && Net::SSLeay::OBJ_sn2nid($ext->{sn})
430
+ || croak "cannot determine NID of extension";
431
+ $have_ext{$nid} and next;
432
+ my $val = $ext->{data};
433
+ if ($nid == 177) {
434
+ # authorityInfoAccess:
435
+ # OpenSSL i2v does not output the same way as expected by i2v :(
436
+ for (split(/\n/,$val)) {
437
+ s{ - }{;}; # "OCSP - URI:..." -> "OCSP;URI:..."
438
+ $_ = "critical,$_" if $ext->{critical};
439
+ Net::SSLeay::P_X509_add_extensions($cert,$issuer_cert,$nid,$_);
440
+ }
441
+ } else {
442
+ $val = "critical,$val" if $ext->{critical};
443
+ Net::SSLeay::P_X509_add_extensions($cert, $issuer_cert, $nid, $val);
444
+ }
445
+ }
446
+
447
+ Net::SSLeay::X509_set_issuer_name($cert,
448
+ Net::SSLeay::X509_get_subject_name($issuer_cert));
449
+ Net::SSLeay::X509_sign($cert,$issuer_key,_digest($digest_name));
450
+
451
+ return ($cert,$key);
452
+ }
453
+
454
+
455
+
456
+ if ( defined &Net::SSLeay::ASN1_TIME_timet ) {
457
+ *_asn1t2t = \&Net::SSLeay::ASN1_TIME_timet
458
+ } else {
459
+ require Time::Local;
460
+ my %mon2i = qw(
461
+ Jan 0 Feb 1 Mar 2 Apr 3 May 4 Jun 5
462
+ Jul 6 Aug 7 Sep 8 Oct 9 Nov 10 Dec 11
463
+ );
464
+ *_asn1t2t = sub {
465
+ my $t = Net::SSLeay::P_ASN1_TIME_put2string( shift );
466
+ my ($mon,$d,$h,$m,$s,$y,$tz) = split(/[\s:]+/,$t);
467
+ defined( $mon = $mon2i{$mon} ) or die "invalid month in $t";
468
+ $tz ||= $y =~s{^(\d+)([A-Z]\S*)}{$1} && $2;
469
+ if ( ! $tz ) {
470
+ return Time::Local::timelocal($s,$m,$h,$d,$mon,$y)
471
+ } elsif ( $tz eq 'GMT' ) {
472
+ return Time::Local::timegm($s,$m,$h,$d,$mon,$y)
473
+ } else {
474
+ die "unexpected TZ $tz from ASN1_TIME_print";
475
+ }
476
+ }
477
+ }
478
+
479
+ {
480
+ my %digest;
481
+ sub _digest {
482
+ my $digest_name = shift;
483
+ return $digest{$digest_name} ||= do {
484
+ Net::SSLeay::SSLeay_add_ssl_algorithms();
485
+ Net::SSLeay::EVP_get_digestbyname($digest_name)
486
+ or die "Digest algorithm $digest_name is not available";
487
+ };
488
+ }
489
+ }
490
+
491
+
492
+ 1;
493
+
494
+ __END__
495
+
496
+ =head1 NAME
497
+
498
+ IO::Socket::SSL::Utils -- loading, storing, creating certificates and keys
499
+
500
+ =head1 SYNOPSIS
501
+
502
+ use IO::Socket::SSL::Utils;
503
+
504
+ $cert = PEM_file2cert('cert.pem'); # load certificate from file
505
+ my $hash = CERT_asHash($cert); # get details from certificate
506
+ PEM_cert2file($cert,'cert.pem'); # write certificate to file
507
+ CERT_free($cert); # free memory within OpenSSL
508
+
509
+ @certs = PEM_file2certs('chain.pem'); # load multiple certificates from file
510
+ PEM_certs2file('chain.pem', @certs); # write multiple certificates to file
511
+ CERT_free(@certs); # free memory for all within OpenSSL
512
+
513
+ my $cert = PEM_string2cert($pem); # load certificate from PEM string
514
+ $pem = PEM_cert2string($cert); # convert certificate to PEM string
515
+
516
+ $key = KEY_create_rsa(2048); # create new 2048-bit RSA key
517
+ PEM_key2file($key,"key.pem"); # and write it to file
518
+ KEY_free($key); # free memory within OpenSSL
519
+
520
+
521
+ =head1 DESCRIPTION
522
+
523
+ This module provides various utility functions to work with certificates and
524
+ private keys, shielding some of the complexity of the underlying Net::SSLeay and
525
+ OpenSSL.
526
+
527
+ =head1 FUNCTIONS
528
+
529
+ =over 4
530
+
531
+ =item *
532
+
533
+ Functions converting between string or file and certificates and keys.
534
+ They croak if the operation cannot be completed.
535
+
536
+ =over 8
537
+
538
+ =item PEM_file2cert(file) -> cert
539
+
540
+ =item PEM_cert2file(cert,file)
541
+
542
+ =item PEM_file2certs(file) -> @certs
543
+
544
+ =item PEM_certs2file(file,@certs)
545
+
546
+ =item PEM_string2cert(string) -> cert
547
+
548
+ =item PEM_cert2string(cert) -> string
549
+
550
+ =item PEM_file2key(file) -> key
551
+
552
+ =item PEM_key2file(key,file)
553
+
554
+ =item PEM_string2key(string) -> key
555
+
556
+ =item PEM_key2string(key) -> string
557
+
558
+ =back
559
+
560
+ =item *
561
+
562
+ Functions for cleaning up.
563
+ Each loaded or created cert and key must be freed to not leak memory.
564
+
565
+ =over 8
566
+
567
+ =item CERT_free(@certs)
568
+
569
+ =item KEY_free(@keys)
570
+
571
+ =back
572
+
573
+ =item * KEY_create_rsa(bits) -> key
574
+
575
+ Creates an RSA key pair, bits defaults to 2048.
576
+
577
+ =item * KEY_create_ec(curve) -> key
578
+
579
+ Creates an EC key, curve defaults to C<prime256v1>.
580
+
581
+ =item * CERT_asHash(cert,[digest_algo]) -> hash
582
+
583
+ Extracts the information from the certificate into a hash and uses the given
584
+ digest_algo (default: SHA-256) to determine digest of pubkey and cert.
585
+ The resulting hash contains:
586
+
587
+ =over 8
588
+
589
+ =item subject
590
+
591
+ Hash with the parts of the subject, e.g. commonName, countryName,
592
+ organizationName, stateOrProvinceName, localityName. If there are multiple
593
+ values for any of these parts the hash value will be an array ref with the
594
+ values in order instead of just a scalar.
595
+
596
+ =item subjectAltNames
597
+
598
+ Array with list of alternative names. Each entry in the list is of
599
+ C<[type,value]>, where C<type> can be OTHERNAME, EMAIL, DNS, X400, DIRNAME,
600
+ EDIPARTY, URI, IP or RID.
601
+
602
+ =item issuer
603
+
604
+ Hash with the parts of the issuer, e.g. commonName, countryName,
605
+ organizationName, stateOrProvinceName, localityName. If there are multiple
606
+ values for any of these parts the hash value will be an array ref with the
607
+ values in order instead of just a scalar.
608
+
609
+ =item not_before, not_after
610
+
611
+ The time frame, where the certificate is valid, as time_t, e.g. can be converted
612
+ with localtime or similar functions.
613
+
614
+ =item serial
615
+
616
+ The serial number
617
+
618
+ =item crl_uri
619
+
620
+ List of URIs for CRL distribution.
621
+
622
+ =item ocsp_uri
623
+
624
+ List of URIs for revocation checking using OCSP.
625
+
626
+ =item keyusage
627
+
628
+ List of keyUsage information in the certificate.
629
+
630
+ =item extkeyusage
631
+
632
+ List of extended key usage information from the certificate. Each entry in
633
+ this list consists of a hash with oid, nid, ln and sn.
634
+
635
+ =item pubkey_digest_xxx
636
+
637
+ Binary digest of the pubkey using the given digest algorithm, e.g.
638
+ pubkey_digest_sha256 if (the default) SHA-256 was used.
639
+
640
+ =item x509_digest_xxx
641
+
642
+ Binary digest of the X.509 certificate using the given digest algorithm, e.g.
643
+ x509_digest_sha256 if (the default) SHA-256 was used.
644
+
645
+ =item fingerprint_xxx
646
+
647
+ Fingerprint of the certificate using the given digest algorithm, e.g.
648
+ fingerprint_sha256 if (the default) SHA-256 was used. Contrary to digest_* this
649
+ is an ASCII string with a list if hexadecimal numbers, e.g.
650
+ "73:59:75:5C:6D...".
651
+
652
+ =item signature_alg
653
+
654
+ Algorithm used to sign certificate, e.g. C<sha256WithRSAEncryption>.
655
+
656
+ =item ext
657
+
658
+ List of extensions.
659
+ Each entry in the list is a hash with oid, nid, sn, critical flag (boolean) and
660
+ data (string representation given by X509V3_EXT_print).
661
+
662
+ =item version
663
+
664
+ Certificate version, usually 2 (x509v3)
665
+
666
+ =back
667
+
668
+ =item * CERT_create(hash) -> (cert,key)
669
+
670
+ Creates a certificate based on the given hash.
671
+ If the issuer is not specified the certificate will be self-signed.
672
+ The following keys can be given:
673
+
674
+ =over 8
675
+
676
+ =item subject
677
+
678
+ Hash with the parts of the subject, e.g. commonName, countryName, ... as
679
+ described in C<CERT_asHash>.
680
+ Default points to IO::Socket::SSL.
681
+
682
+ =item not_before
683
+
684
+ A time_t value when the certificate starts to be valid. Defaults to current
685
+ time.
686
+
687
+ =item not_after
688
+
689
+ A time_t value when the certificate ends to be valid. Defaults to current
690
+ time plus one 365 days.
691
+
692
+ =item serial
693
+
694
+ The serial number. If not given a random number will be used.
695
+
696
+ =item version
697
+
698
+ The version of the certificate, default 2 (x509v3).
699
+
700
+ =item CA true|false
701
+
702
+ If true declare certificate as CA, defaults to false.
703
+
704
+ =item purpose string|array|hash
705
+
706
+ Set the purpose of the certificate.
707
+ The different purposes can be given as a string separated by non-word character,
708
+ as array or hash. With string or array each purpose can be prefixed with '+'
709
+ (enable) or '-' (disable) and same can be done with the value when given as a
710
+ hash. By default enabling the purpose is assumed.
711
+
712
+ If the CA option is given and true the defaults "ca,sslca,emailca,objca" are
713
+ assumed, but can be overridden with explicit purpose.
714
+ If the CA option is given and false the defaults "server,client" are assumed.
715
+ If no CA option and no purpose is given it defaults to "server,client".
716
+
717
+ Purpose affects basicConstraints, keyUsage, extKeyUsage and netscapeCertType.
718
+ The following purposes are defined (case is not important):
719
+
720
+ client
721
+ server
722
+ email
723
+ objsign
724
+
725
+ CA
726
+ sslCA
727
+ emailCA
728
+ objCA
729
+
730
+ emailProtection
731
+ codeSigning
732
+ timeStamping
733
+
734
+ digitalSignature
735
+ nonRepudiation
736
+ keyEncipherment
737
+ dataEncipherment
738
+ keyAgreement
739
+ keyCertSign
740
+ cRLSign
741
+ encipherOnly
742
+ decipherOnly
743
+
744
+ Examples:
745
+
746
+ # root-CA for SSL certificates
747
+ purpose => 'sslCA' # or CA => 1
748
+
749
+ # server certificate and CA (typically self-signed)
750
+ purpose => 'sslCA,server'
751
+
752
+ # client certificate
753
+ purpose => 'client',
754
+
755
+
756
+ =item ext [{ sn => .., data => ... }, ... ]
757
+
758
+ List of extensions. The type of the extension can be specified as name with
759
+ C<sn> or as NID with C<nid> and the data with C<data>. These data must be in the
760
+ same syntax as expected within openssl.cnf, e.g. something like
761
+ C<OCSP;URI=http://...>. Additionally the critical flag can be set with
762
+ C<critical => 1>.
763
+
764
+ =item key key
765
+
766
+ use given key as key for certificate, otherwise a new one will be generated and
767
+ returned
768
+
769
+ =item issuer_cert cert
770
+
771
+ set issuer for new certificate
772
+
773
+ =item issuer_key key
774
+
775
+ sign new certificate with given key
776
+
777
+ =item issuer [ cert, key ]
778
+
779
+ Instead of giving issuer_key and issuer_cert as separate arguments they can be
780
+ given both together.
781
+
782
+ =item digest algorithm
783
+
784
+ specify the algorithm used to sign the certificate, default SHA-256.
785
+
786
+ =back
787
+
788
+ =back
789
+
790
+ =head1 AUTHOR
791
+
792
+ Steffen Ullrich