@annadata/capacitor-mqtt-quic 0.1.6 → 0.1.8

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 (666) hide show
  1. package/AnnadataCapacitorMqttQuic.podspec +2 -1
  2. package/Package.swift +59 -0
  3. package/README.md +173 -24
  4. package/android/NGTCP2_BUILD_INSTRUCTIONS.md +66 -45
  5. package/android/app/src/main/assets/capacitor.config.json +1 -1
  6. package/android/build-openssl.sh +1 -1
  7. package/android/build.gradle +4 -1
  8. package/android/install/nghttp3-android/arm64-v8a/include/nghttp3/nghttp3.h +3295 -0
  9. package/android/install/nghttp3-android/arm64-v8a/include/nghttp3/version.h +46 -0
  10. package/android/install/nghttp3-android/arm64-v8a/lib/cmake/nghttp3/nghttp3Config.cmake +3 -0
  11. package/android/install/nghttp3-android/arm64-v8a/lib/cmake/nghttp3/nghttp3ConfigVersion.cmake +65 -0
  12. package/android/install/nghttp3-android/arm64-v8a/lib/cmake/nghttp3/nghttp3Targets-release.cmake +29 -0
  13. package/android/install/nghttp3-android/arm64-v8a/lib/cmake/nghttp3/nghttp3Targets.cmake +114 -0
  14. package/android/install/nghttp3-android/arm64-v8a/lib/libnghttp3.a +0 -0
  15. package/android/install/nghttp3-android/arm64-v8a/lib/libnghttp3.so +0 -0
  16. package/android/install/nghttp3-android/arm64-v8a/lib/pkgconfig/libnghttp3.pc +34 -0
  17. package/android/install/nghttp3-android/arm64-v8a/share/doc/nghttp3/README.rst +75 -0
  18. package/android/install/nghttp3-android/armeabi-v7a/include/nghttp3/nghttp3.h +3295 -0
  19. package/android/install/nghttp3-android/armeabi-v7a/include/nghttp3/version.h +46 -0
  20. package/android/install/nghttp3-android/armeabi-v7a/lib/cmake/nghttp3/nghttp3Config.cmake +3 -0
  21. package/android/install/nghttp3-android/armeabi-v7a/lib/cmake/nghttp3/nghttp3ConfigVersion.cmake +65 -0
  22. package/android/install/nghttp3-android/armeabi-v7a/lib/cmake/nghttp3/nghttp3Targets-release.cmake +29 -0
  23. package/android/install/nghttp3-android/armeabi-v7a/lib/cmake/nghttp3/nghttp3Targets.cmake +114 -0
  24. package/android/install/nghttp3-android/armeabi-v7a/lib/libnghttp3.a +0 -0
  25. package/android/install/nghttp3-android/armeabi-v7a/lib/libnghttp3.so +0 -0
  26. package/android/install/nghttp3-android/armeabi-v7a/lib/pkgconfig/libnghttp3.pc +34 -0
  27. package/android/install/nghttp3-android/armeabi-v7a/share/doc/nghttp3/README.rst +75 -0
  28. package/android/install/nghttp3-android/x86_64/include/nghttp3/nghttp3.h +3295 -0
  29. package/android/install/nghttp3-android/x86_64/include/nghttp3/version.h +46 -0
  30. package/android/install/nghttp3-android/x86_64/lib/cmake/nghttp3/nghttp3Config.cmake +3 -0
  31. package/android/install/nghttp3-android/x86_64/lib/cmake/nghttp3/nghttp3ConfigVersion.cmake +65 -0
  32. package/android/install/nghttp3-android/x86_64/lib/cmake/nghttp3/nghttp3Targets-release.cmake +29 -0
  33. package/android/install/nghttp3-android/x86_64/lib/cmake/nghttp3/nghttp3Targets.cmake +114 -0
  34. package/android/install/nghttp3-android/x86_64/lib/libnghttp3.a +0 -0
  35. package/android/install/nghttp3-android/x86_64/lib/libnghttp3.so +0 -0
  36. package/android/install/nghttp3-android/x86_64/lib/pkgconfig/libnghttp3.pc +34 -0
  37. package/android/install/nghttp3-android/x86_64/share/doc/nghttp3/README.rst +75 -0
  38. package/android/install/ngtcp2-android/arm64-v8a/include/ngtcp2/ngtcp2.h +6254 -0
  39. package/android/install/ngtcp2-android/arm64-v8a/include/ngtcp2/ngtcp2_crypto.h +1037 -0
  40. package/android/install/ngtcp2-android/arm64-v8a/include/ngtcp2/ngtcp2_crypto_wolfssl.h +106 -0
  41. package/android/install/ngtcp2-android/arm64-v8a/include/ngtcp2/version.h +51 -0
  42. package/android/install/ngtcp2-android/arm64-v8a/lib/cmake/ngtcp2/ngtcp2Config.cmake +6 -0
  43. package/android/install/ngtcp2-android/arm64-v8a/lib/cmake/ngtcp2/ngtcp2ConfigVersion.cmake +65 -0
  44. package/android/install/ngtcp2-android/arm64-v8a/lib/cmake/ngtcp2/ngtcp2Targets-release.cmake +29 -0
  45. package/android/install/ngtcp2-android/arm64-v8a/lib/cmake/ngtcp2/ngtcp2Targets.cmake +114 -0
  46. package/android/install/ngtcp2-android/arm64-v8a/lib/libngtcp2.a +0 -0
  47. package/android/install/ngtcp2-android/arm64-v8a/lib/libngtcp2.so +0 -0
  48. package/android/install/ngtcp2-android/arm64-v8a/lib/libngtcp2_crypto_wolfssl.a +0 -0
  49. package/android/install/ngtcp2-android/arm64-v8a/lib/libngtcp2_crypto_wolfssl.so +0 -0
  50. package/android/install/ngtcp2-android/arm64-v8a/lib/pkgconfig/libngtcp2.pc +33 -0
  51. package/android/install/ngtcp2-android/arm64-v8a/lib/pkgconfig/libngtcp2_crypto_wolfssl.pc +34 -0
  52. package/android/install/ngtcp2-android/arm64-v8a/share/doc/ngtcp2/README.rst +385 -0
  53. package/android/install/ngtcp2-android/armeabi-v7a/include/ngtcp2/ngtcp2.h +6254 -0
  54. package/android/install/ngtcp2-android/armeabi-v7a/include/ngtcp2/ngtcp2_crypto.h +1037 -0
  55. package/android/install/ngtcp2-android/armeabi-v7a/include/ngtcp2/ngtcp2_crypto_wolfssl.h +106 -0
  56. package/android/install/ngtcp2-android/armeabi-v7a/include/ngtcp2/version.h +51 -0
  57. package/android/install/ngtcp2-android/armeabi-v7a/lib/cmake/ngtcp2/ngtcp2Config.cmake +6 -0
  58. package/android/install/ngtcp2-android/armeabi-v7a/lib/cmake/ngtcp2/ngtcp2ConfigVersion.cmake +65 -0
  59. package/android/install/ngtcp2-android/armeabi-v7a/lib/cmake/ngtcp2/ngtcp2Targets-release.cmake +29 -0
  60. package/android/install/ngtcp2-android/armeabi-v7a/lib/cmake/ngtcp2/ngtcp2Targets.cmake +114 -0
  61. package/android/install/ngtcp2-android/armeabi-v7a/lib/libngtcp2.a +0 -0
  62. package/android/install/ngtcp2-android/armeabi-v7a/lib/libngtcp2.so +0 -0
  63. package/android/install/ngtcp2-android/armeabi-v7a/lib/libngtcp2_crypto_wolfssl.a +0 -0
  64. package/android/install/ngtcp2-android/armeabi-v7a/lib/libngtcp2_crypto_wolfssl.so +0 -0
  65. package/android/install/ngtcp2-android/armeabi-v7a/lib/pkgconfig/libngtcp2.pc +33 -0
  66. package/android/install/ngtcp2-android/armeabi-v7a/lib/pkgconfig/libngtcp2_crypto_wolfssl.pc +34 -0
  67. package/android/install/ngtcp2-android/armeabi-v7a/share/doc/ngtcp2/README.rst +385 -0
  68. package/android/install/ngtcp2-android/x86_64/include/ngtcp2/ngtcp2.h +6254 -0
  69. package/android/install/ngtcp2-android/x86_64/include/ngtcp2/ngtcp2_crypto.h +1037 -0
  70. package/android/install/ngtcp2-android/x86_64/include/ngtcp2/ngtcp2_crypto_wolfssl.h +106 -0
  71. package/android/install/ngtcp2-android/x86_64/include/ngtcp2/version.h +51 -0
  72. package/android/install/ngtcp2-android/x86_64/lib/cmake/ngtcp2/ngtcp2Config.cmake +6 -0
  73. package/android/install/ngtcp2-android/x86_64/lib/cmake/ngtcp2/ngtcp2ConfigVersion.cmake +65 -0
  74. package/android/install/ngtcp2-android/x86_64/lib/cmake/ngtcp2/ngtcp2Targets-release.cmake +29 -0
  75. package/android/install/ngtcp2-android/x86_64/lib/cmake/ngtcp2/ngtcp2Targets.cmake +114 -0
  76. package/android/install/ngtcp2-android/x86_64/lib/libngtcp2.a +0 -0
  77. package/android/install/ngtcp2-android/x86_64/lib/libngtcp2.so +0 -0
  78. package/android/install/ngtcp2-android/x86_64/lib/libngtcp2_crypto_wolfssl.a +0 -0
  79. package/android/install/ngtcp2-android/x86_64/lib/libngtcp2_crypto_wolfssl.so +0 -0
  80. package/android/install/ngtcp2-android/x86_64/lib/pkgconfig/libngtcp2.pc +33 -0
  81. package/android/install/ngtcp2-android/x86_64/lib/pkgconfig/libngtcp2_crypto_wolfssl.pc +34 -0
  82. package/android/install/ngtcp2-android/x86_64/share/doc/ngtcp2/README.rst +385 -0
  83. package/android/install/wolfssl-android/arm64-v8a/bin/wolfssl-config +117 -0
  84. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/callbacks.h +93 -0
  85. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/certs_test.h +7073 -0
  86. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/certs_test_sm.h +2913 -0
  87. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/crl.h +58 -0
  88. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/error-ssl.h +280 -0
  89. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/ocsp.h +191 -0
  90. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/openssl/aes.h +117 -0
  91. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/openssl/asn1.h +315 -0
  92. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/openssl/asn1t.h +30 -0
  93. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/openssl/bio.h +237 -0
  94. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/openssl/bn.h +332 -0
  95. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/openssl/buffer.h +57 -0
  96. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/openssl/camellia.h +27 -0
  97. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/openssl/cmac.h +66 -0
  98. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/openssl/cms.h +26 -0
  99. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/openssl/compat_types.h +70 -0
  100. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/openssl/conf.h +117 -0
  101. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/openssl/crypto.h +171 -0
  102. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/openssl/des.h +124 -0
  103. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/openssl/dh.h +144 -0
  104. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/openssl/dsa.h +164 -0
  105. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/openssl/ec.h +525 -0
  106. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/openssl/ec25519.h +46 -0
  107. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/openssl/ec448.h +46 -0
  108. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/openssl/ecdh.h +49 -0
  109. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/openssl/ecdsa.h +87 -0
  110. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/openssl/ed25519.h +49 -0
  111. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/openssl/ed448.h +49 -0
  112. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/openssl/engine.h +9 -0
  113. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/openssl/err.h +84 -0
  114. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/openssl/evp.h +1540 -0
  115. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/openssl/fips_rand.h +125 -0
  116. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/openssl/hmac.h +98 -0
  117. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/openssl/kdf.h +45 -0
  118. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/openssl/lhash.h +64 -0
  119. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/openssl/md4.h +66 -0
  120. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/openssl/md5.h +108 -0
  121. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/openssl/modes.h +45 -0
  122. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/openssl/obj_mac.h +92 -0
  123. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/openssl/objects.h +86 -0
  124. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/openssl/ocsp.h +108 -0
  125. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/openssl/opensslconf.h +8 -0
  126. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/openssl/opensslv.h +78 -0
  127. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/openssl/ossl_typ.h +32 -0
  128. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/openssl/pem.h +301 -0
  129. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/openssl/pkcs12.h +57 -0
  130. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/openssl/pkcs7.h +110 -0
  131. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/openssl/rand.h +38 -0
  132. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/openssl/rc4.h +64 -0
  133. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/openssl/ripemd.h +58 -0
  134. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/openssl/rsa.h +291 -0
  135. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/openssl/safestack.h +40 -0
  136. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/openssl/sha.h +331 -0
  137. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/openssl/sha3.h +158 -0
  138. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/openssl/srp.h +33 -0
  139. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/openssl/ssl.h +1923 -0
  140. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/openssl/ssl23.h +1 -0
  141. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/openssl/stack.h +61 -0
  142. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/openssl/tls1.h +64 -0
  143. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/openssl/txt_db.h +60 -0
  144. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/openssl/ui.h +2 -0
  145. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/openssl/x509.h +227 -0
  146. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/openssl/x509_vfy.h +50 -0
  147. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/openssl/x509v3.h +237 -0
  148. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/options.h +273 -0
  149. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/quic.h +310 -0
  150. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/sniffer.h +359 -0
  151. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/sniffer_error.h +151 -0
  152. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/ssl.h +6300 -0
  153. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/test.h +4989 -0
  154. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/version.h +40 -0
  155. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/wolfcrypt/aes.h +1074 -0
  156. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/wolfcrypt/arc4.h +69 -0
  157. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/wolfcrypt/ascon.h +109 -0
  158. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/wolfcrypt/asn.h +2855 -0
  159. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/wolfcrypt/asn_public.h +1009 -0
  160. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/wolfcrypt/blake2-impl.h +155 -0
  161. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/wolfcrypt/blake2-int.h +174 -0
  162. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/wolfcrypt/blake2.h +108 -0
  163. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/wolfcrypt/camellia.h +116 -0
  164. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/wolfcrypt/chacha.h +133 -0
  165. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/wolfcrypt/chacha20_poly1305.h +157 -0
  166. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/wolfcrypt/cmac.h +168 -0
  167. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/wolfcrypt/coding.h +107 -0
  168. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/wolfcrypt/compress.h +60 -0
  169. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/wolfcrypt/cpuid.h +153 -0
  170. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/wolfcrypt/cryptocb.h +770 -0
  171. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/wolfcrypt/curve25519.h +225 -0
  172. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/wolfcrypt/curve448.h +151 -0
  173. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/wolfcrypt/des3.h +167 -0
  174. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/wolfcrypt/dh.h +210 -0
  175. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/wolfcrypt/dilithium.h +1051 -0
  176. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/wolfcrypt/dsa.h +121 -0
  177. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/wolfcrypt/ecc.h +1074 -0
  178. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/wolfcrypt/eccsi.h +176 -0
  179. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/wolfcrypt/ed25519.h +239 -0
  180. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/wolfcrypt/ed448.h +214 -0
  181. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/wolfcrypt/error-crypt.h +368 -0
  182. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/wolfcrypt/ext_lms.h +62 -0
  183. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/wolfcrypt/ext_mlkem.h +74 -0
  184. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/wolfcrypt/ext_xmss.h +53 -0
  185. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/wolfcrypt/falcon.h +180 -0
  186. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/wolfcrypt/fe_448.h +122 -0
  187. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/wolfcrypt/fe_operations.h +189 -0
  188. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/wolfcrypt/fips_test.h +131 -0
  189. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/wolfcrypt/ge_448.h +84 -0
  190. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/wolfcrypt/ge_operations.h +134 -0
  191. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/wolfcrypt/hash.h +296 -0
  192. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/wolfcrypt/hmac.h +231 -0
  193. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/wolfcrypt/hpke.h +145 -0
  194. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/wolfcrypt/integer.h +449 -0
  195. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/wolfcrypt/kdf.h +199 -0
  196. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/wolfcrypt/lms.h +202 -0
  197. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/wolfcrypt/logging.h +588 -0
  198. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/wolfcrypt/md2.h +83 -0
  199. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/wolfcrypt/md4.h +77 -0
  200. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/wolfcrypt/md5.h +141 -0
  201. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/wolfcrypt/mem_track.h +968 -0
  202. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/wolfcrypt/memory.h +545 -0
  203. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/wolfcrypt/misc.h +214 -0
  204. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/wolfcrypt/mlkem.h +377 -0
  205. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/wolfcrypt/mpi_class.h +1021 -0
  206. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/wolfcrypt/mpi_superclass.h +96 -0
  207. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/wolfcrypt/oid_sum.h +1907 -0
  208. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/wolfcrypt/pkcs12.h +79 -0
  209. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/wolfcrypt/pkcs7.h +578 -0
  210. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/wolfcrypt/poly1305.h +207 -0
  211. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/wolfcrypt/pwdbased.h +81 -0
  212. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/wolfcrypt/random.h +300 -0
  213. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/wolfcrypt/rc2.h +68 -0
  214. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/wolfcrypt/ripemd.h +67 -0
  215. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/wolfcrypt/rsa.h +494 -0
  216. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/wolfcrypt/sakke.h +228 -0
  217. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/wolfcrypt/settings.h +4762 -0
  218. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/wolfcrypt/sha.h +237 -0
  219. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/wolfcrypt/sha256.h +360 -0
  220. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/wolfcrypt/sha3.h +274 -0
  221. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/wolfcrypt/sha512.h +372 -0
  222. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/wolfcrypt/signature.h +87 -0
  223. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/wolfcrypt/siphash.h +101 -0
  224. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/wolfcrypt/sm2.h +27 -0
  225. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/wolfcrypt/sm3.h +27 -0
  226. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/wolfcrypt/sm4.h +27 -0
  227. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/wolfcrypt/sp_int.h +1396 -0
  228. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/wolfcrypt/sphincs.h +167 -0
  229. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/wolfcrypt/srp.h +313 -0
  230. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/wolfcrypt/tfm.h +941 -0
  231. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/wolfcrypt/types.h +2383 -0
  232. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/wolfcrypt/visibility.h +97 -0
  233. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/wolfcrypt/wc_encrypt.h +126 -0
  234. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/wolfcrypt/wc_lms.h +506 -0
  235. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/wolfcrypt/wc_mlkem.h +370 -0
  236. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/wolfcrypt/wc_port.h +1764 -0
  237. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/wolfcrypt/wc_xmss.h +285 -0
  238. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/wolfcrypt/wolfevent.h +120 -0
  239. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/wolfcrypt/wolfmath.h +175 -0
  240. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/wolfcrypt/xmss.h +203 -0
  241. package/android/install/wolfssl-android/arm64-v8a/include/wolfssl/wolfio.h +1035 -0
  242. package/android/install/wolfssl-android/arm64-v8a/lib/libwolfssl.a +0 -0
  243. package/android/install/wolfssl-android/arm64-v8a/lib/libwolfssl.la +41 -0
  244. package/android/install/wolfssl-android/arm64-v8a/lib/pkgconfig/wolfssl.pc +11 -0
  245. package/android/install/wolfssl-android/arm64-v8a/share/doc/wolfssl/QUIC.md +117 -0
  246. package/android/install/wolfssl-android/arm64-v8a/share/doc/wolfssl/README.txt +8 -0
  247. package/android/install/wolfssl-android/arm64-v8a/share/doc/wolfssl/example/async_client.c +245 -0
  248. package/android/install/wolfssl-android/arm64-v8a/share/doc/wolfssl/example/async_server.c +331 -0
  249. package/android/install/wolfssl-android/arm64-v8a/share/doc/wolfssl/example/client.c +4885 -0
  250. package/android/install/wolfssl-android/arm64-v8a/share/doc/wolfssl/example/echoclient.c +341 -0
  251. package/android/install/wolfssl-android/arm64-v8a/share/doc/wolfssl/example/echoserver.c +498 -0
  252. package/android/install/wolfssl-android/arm64-v8a/share/doc/wolfssl/example/sctp-client-dtls.c +135 -0
  253. package/android/install/wolfssl-android/arm64-v8a/share/doc/wolfssl/example/sctp-client.c +78 -0
  254. package/android/install/wolfssl-android/arm64-v8a/share/doc/wolfssl/example/sctp-server-dtls.c +134 -0
  255. package/android/install/wolfssl-android/arm64-v8a/share/doc/wolfssl/example/sctp-server.c +83 -0
  256. package/android/install/wolfssl-android/arm64-v8a/share/doc/wolfssl/example/server.c +4124 -0
  257. package/android/install/wolfssl-android/arm64-v8a/share/doc/wolfssl/example/tls_bench.c +2357 -0
  258. package/android/install/wolfssl-android/arm64-v8a/share/doc/wolfssl/taoCert.txt +176 -0
  259. package/android/install/wolfssl-android/armeabi-v7a/bin/wolfssl-config +117 -0
  260. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/callbacks.h +93 -0
  261. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/certs_test.h +7073 -0
  262. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/certs_test_sm.h +2913 -0
  263. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/crl.h +58 -0
  264. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/error-ssl.h +280 -0
  265. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/ocsp.h +191 -0
  266. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/openssl/aes.h +117 -0
  267. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/openssl/asn1.h +315 -0
  268. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/openssl/asn1t.h +30 -0
  269. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/openssl/bio.h +237 -0
  270. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/openssl/bn.h +332 -0
  271. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/openssl/buffer.h +57 -0
  272. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/openssl/camellia.h +27 -0
  273. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/openssl/cmac.h +66 -0
  274. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/openssl/cms.h +26 -0
  275. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/openssl/compat_types.h +70 -0
  276. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/openssl/conf.h +117 -0
  277. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/openssl/crypto.h +171 -0
  278. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/openssl/des.h +124 -0
  279. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/openssl/dh.h +144 -0
  280. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/openssl/dsa.h +164 -0
  281. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/openssl/ec.h +525 -0
  282. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/openssl/ec25519.h +46 -0
  283. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/openssl/ec448.h +46 -0
  284. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/openssl/ecdh.h +49 -0
  285. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/openssl/ecdsa.h +87 -0
  286. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/openssl/ed25519.h +49 -0
  287. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/openssl/ed448.h +49 -0
  288. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/openssl/engine.h +9 -0
  289. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/openssl/err.h +84 -0
  290. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/openssl/evp.h +1540 -0
  291. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/openssl/fips_rand.h +125 -0
  292. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/openssl/hmac.h +98 -0
  293. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/openssl/kdf.h +45 -0
  294. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/openssl/lhash.h +64 -0
  295. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/openssl/md4.h +66 -0
  296. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/openssl/md5.h +108 -0
  297. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/openssl/modes.h +45 -0
  298. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/openssl/obj_mac.h +92 -0
  299. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/openssl/objects.h +86 -0
  300. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/openssl/ocsp.h +108 -0
  301. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/openssl/opensslconf.h +8 -0
  302. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/openssl/opensslv.h +78 -0
  303. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/openssl/ossl_typ.h +32 -0
  304. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/openssl/pem.h +301 -0
  305. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/openssl/pkcs12.h +57 -0
  306. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/openssl/pkcs7.h +110 -0
  307. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/openssl/rand.h +38 -0
  308. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/openssl/rc4.h +64 -0
  309. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/openssl/ripemd.h +58 -0
  310. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/openssl/rsa.h +291 -0
  311. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/openssl/safestack.h +40 -0
  312. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/openssl/sha.h +331 -0
  313. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/openssl/sha3.h +158 -0
  314. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/openssl/srp.h +33 -0
  315. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/openssl/ssl.h +1923 -0
  316. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/openssl/ssl23.h +1 -0
  317. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/openssl/stack.h +61 -0
  318. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/openssl/tls1.h +64 -0
  319. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/openssl/txt_db.h +60 -0
  320. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/openssl/ui.h +2 -0
  321. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/openssl/x509.h +227 -0
  322. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/openssl/x509_vfy.h +50 -0
  323. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/openssl/x509v3.h +237 -0
  324. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/options.h +261 -0
  325. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/quic.h +310 -0
  326. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/sniffer.h +359 -0
  327. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/sniffer_error.h +151 -0
  328. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/ssl.h +6300 -0
  329. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/test.h +4989 -0
  330. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/version.h +40 -0
  331. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/wolfcrypt/aes.h +1074 -0
  332. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/wolfcrypt/arc4.h +69 -0
  333. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/wolfcrypt/ascon.h +109 -0
  334. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/wolfcrypt/asn.h +2855 -0
  335. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/wolfcrypt/asn_public.h +1009 -0
  336. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/wolfcrypt/blake2-impl.h +155 -0
  337. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/wolfcrypt/blake2-int.h +174 -0
  338. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/wolfcrypt/blake2.h +108 -0
  339. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/wolfcrypt/camellia.h +116 -0
  340. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/wolfcrypt/chacha.h +133 -0
  341. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/wolfcrypt/chacha20_poly1305.h +157 -0
  342. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/wolfcrypt/cmac.h +168 -0
  343. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/wolfcrypt/coding.h +107 -0
  344. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/wolfcrypt/compress.h +60 -0
  345. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/wolfcrypt/cpuid.h +153 -0
  346. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/wolfcrypt/cryptocb.h +770 -0
  347. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/wolfcrypt/curve25519.h +225 -0
  348. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/wolfcrypt/curve448.h +151 -0
  349. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/wolfcrypt/des3.h +167 -0
  350. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/wolfcrypt/dh.h +210 -0
  351. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/wolfcrypt/dilithium.h +1051 -0
  352. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/wolfcrypt/dsa.h +121 -0
  353. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/wolfcrypt/ecc.h +1074 -0
  354. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/wolfcrypt/eccsi.h +176 -0
  355. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/wolfcrypt/ed25519.h +239 -0
  356. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/wolfcrypt/ed448.h +214 -0
  357. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/wolfcrypt/error-crypt.h +368 -0
  358. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/wolfcrypt/ext_lms.h +62 -0
  359. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/wolfcrypt/ext_mlkem.h +74 -0
  360. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/wolfcrypt/ext_xmss.h +53 -0
  361. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/wolfcrypt/falcon.h +180 -0
  362. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/wolfcrypt/fe_448.h +122 -0
  363. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/wolfcrypt/fe_operations.h +189 -0
  364. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/wolfcrypt/fips_test.h +131 -0
  365. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/wolfcrypt/ge_448.h +84 -0
  366. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/wolfcrypt/ge_operations.h +134 -0
  367. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/wolfcrypt/hash.h +296 -0
  368. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/wolfcrypt/hmac.h +231 -0
  369. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/wolfcrypt/hpke.h +145 -0
  370. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/wolfcrypt/integer.h +449 -0
  371. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/wolfcrypt/kdf.h +199 -0
  372. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/wolfcrypt/lms.h +202 -0
  373. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/wolfcrypt/logging.h +588 -0
  374. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/wolfcrypt/md2.h +83 -0
  375. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/wolfcrypt/md4.h +77 -0
  376. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/wolfcrypt/md5.h +141 -0
  377. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/wolfcrypt/mem_track.h +968 -0
  378. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/wolfcrypt/memory.h +545 -0
  379. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/wolfcrypt/misc.h +214 -0
  380. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/wolfcrypt/mlkem.h +377 -0
  381. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/wolfcrypt/mpi_class.h +1021 -0
  382. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/wolfcrypt/mpi_superclass.h +96 -0
  383. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/wolfcrypt/oid_sum.h +1907 -0
  384. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/wolfcrypt/pkcs12.h +79 -0
  385. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/wolfcrypt/pkcs7.h +578 -0
  386. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/wolfcrypt/poly1305.h +207 -0
  387. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/wolfcrypt/pwdbased.h +81 -0
  388. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/wolfcrypt/random.h +300 -0
  389. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/wolfcrypt/rc2.h +68 -0
  390. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/wolfcrypt/ripemd.h +67 -0
  391. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/wolfcrypt/rsa.h +494 -0
  392. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/wolfcrypt/sakke.h +228 -0
  393. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/wolfcrypt/settings.h +4762 -0
  394. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/wolfcrypt/sha.h +237 -0
  395. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/wolfcrypt/sha256.h +360 -0
  396. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/wolfcrypt/sha3.h +274 -0
  397. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/wolfcrypt/sha512.h +372 -0
  398. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/wolfcrypt/signature.h +87 -0
  399. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/wolfcrypt/siphash.h +101 -0
  400. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/wolfcrypt/sm2.h +27 -0
  401. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/wolfcrypt/sm3.h +27 -0
  402. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/wolfcrypt/sm4.h +27 -0
  403. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/wolfcrypt/sp_int.h +1396 -0
  404. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/wolfcrypt/sphincs.h +167 -0
  405. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/wolfcrypt/srp.h +313 -0
  406. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/wolfcrypt/tfm.h +941 -0
  407. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/wolfcrypt/types.h +2383 -0
  408. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/wolfcrypt/visibility.h +97 -0
  409. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/wolfcrypt/wc_encrypt.h +126 -0
  410. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/wolfcrypt/wc_lms.h +506 -0
  411. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/wolfcrypt/wc_mlkem.h +370 -0
  412. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/wolfcrypt/wc_port.h +1764 -0
  413. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/wolfcrypt/wc_xmss.h +285 -0
  414. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/wolfcrypt/wolfevent.h +120 -0
  415. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/wolfcrypt/wolfmath.h +175 -0
  416. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/wolfcrypt/xmss.h +203 -0
  417. package/android/install/wolfssl-android/armeabi-v7a/include/wolfssl/wolfio.h +1035 -0
  418. package/android/install/wolfssl-android/armeabi-v7a/lib/libwolfssl.a +0 -0
  419. package/android/install/wolfssl-android/armeabi-v7a/lib/libwolfssl.la +41 -0
  420. package/android/install/wolfssl-android/armeabi-v7a/lib/pkgconfig/wolfssl.pc +11 -0
  421. package/android/install/wolfssl-android/armeabi-v7a/share/doc/wolfssl/QUIC.md +117 -0
  422. package/android/install/wolfssl-android/armeabi-v7a/share/doc/wolfssl/README.txt +8 -0
  423. package/android/install/wolfssl-android/armeabi-v7a/share/doc/wolfssl/example/async_client.c +245 -0
  424. package/android/install/wolfssl-android/armeabi-v7a/share/doc/wolfssl/example/async_server.c +331 -0
  425. package/android/install/wolfssl-android/armeabi-v7a/share/doc/wolfssl/example/client.c +4885 -0
  426. package/android/install/wolfssl-android/armeabi-v7a/share/doc/wolfssl/example/echoclient.c +341 -0
  427. package/android/install/wolfssl-android/armeabi-v7a/share/doc/wolfssl/example/echoserver.c +498 -0
  428. package/android/install/wolfssl-android/armeabi-v7a/share/doc/wolfssl/example/sctp-client-dtls.c +135 -0
  429. package/android/install/wolfssl-android/armeabi-v7a/share/doc/wolfssl/example/sctp-client.c +78 -0
  430. package/android/install/wolfssl-android/armeabi-v7a/share/doc/wolfssl/example/sctp-server-dtls.c +134 -0
  431. package/android/install/wolfssl-android/armeabi-v7a/share/doc/wolfssl/example/sctp-server.c +83 -0
  432. package/android/install/wolfssl-android/armeabi-v7a/share/doc/wolfssl/example/server.c +4124 -0
  433. package/android/install/wolfssl-android/armeabi-v7a/share/doc/wolfssl/example/tls_bench.c +2357 -0
  434. package/android/install/wolfssl-android/armeabi-v7a/share/doc/wolfssl/taoCert.txt +176 -0
  435. package/android/install/wolfssl-android/x86_64/bin/wolfssl-config +117 -0
  436. package/android/install/wolfssl-android/x86_64/include/wolfssl/callbacks.h +93 -0
  437. package/android/install/wolfssl-android/x86_64/include/wolfssl/certs_test.h +7073 -0
  438. package/android/install/wolfssl-android/x86_64/include/wolfssl/certs_test_sm.h +2913 -0
  439. package/android/install/wolfssl-android/x86_64/include/wolfssl/crl.h +58 -0
  440. package/android/install/wolfssl-android/x86_64/include/wolfssl/error-ssl.h +280 -0
  441. package/android/install/wolfssl-android/x86_64/include/wolfssl/ocsp.h +191 -0
  442. package/android/install/wolfssl-android/x86_64/include/wolfssl/openssl/aes.h +117 -0
  443. package/android/install/wolfssl-android/x86_64/include/wolfssl/openssl/asn1.h +315 -0
  444. package/android/install/wolfssl-android/x86_64/include/wolfssl/openssl/asn1t.h +30 -0
  445. package/android/install/wolfssl-android/x86_64/include/wolfssl/openssl/bio.h +237 -0
  446. package/android/install/wolfssl-android/x86_64/include/wolfssl/openssl/bn.h +332 -0
  447. package/android/install/wolfssl-android/x86_64/include/wolfssl/openssl/buffer.h +57 -0
  448. package/android/install/wolfssl-android/x86_64/include/wolfssl/openssl/camellia.h +27 -0
  449. package/android/install/wolfssl-android/x86_64/include/wolfssl/openssl/cmac.h +66 -0
  450. package/android/install/wolfssl-android/x86_64/include/wolfssl/openssl/cms.h +26 -0
  451. package/android/install/wolfssl-android/x86_64/include/wolfssl/openssl/compat_types.h +70 -0
  452. package/android/install/wolfssl-android/x86_64/include/wolfssl/openssl/conf.h +117 -0
  453. package/android/install/wolfssl-android/x86_64/include/wolfssl/openssl/crypto.h +171 -0
  454. package/android/install/wolfssl-android/x86_64/include/wolfssl/openssl/des.h +124 -0
  455. package/android/install/wolfssl-android/x86_64/include/wolfssl/openssl/dh.h +144 -0
  456. package/android/install/wolfssl-android/x86_64/include/wolfssl/openssl/dsa.h +164 -0
  457. package/android/install/wolfssl-android/x86_64/include/wolfssl/openssl/ec.h +525 -0
  458. package/android/install/wolfssl-android/x86_64/include/wolfssl/openssl/ec25519.h +46 -0
  459. package/android/install/wolfssl-android/x86_64/include/wolfssl/openssl/ec448.h +46 -0
  460. package/android/install/wolfssl-android/x86_64/include/wolfssl/openssl/ecdh.h +49 -0
  461. package/android/install/wolfssl-android/x86_64/include/wolfssl/openssl/ecdsa.h +87 -0
  462. package/android/install/wolfssl-android/x86_64/include/wolfssl/openssl/ed25519.h +49 -0
  463. package/android/install/wolfssl-android/x86_64/include/wolfssl/openssl/ed448.h +49 -0
  464. package/android/install/wolfssl-android/x86_64/include/wolfssl/openssl/engine.h +9 -0
  465. package/android/install/wolfssl-android/x86_64/include/wolfssl/openssl/err.h +84 -0
  466. package/android/install/wolfssl-android/x86_64/include/wolfssl/openssl/evp.h +1540 -0
  467. package/android/install/wolfssl-android/x86_64/include/wolfssl/openssl/fips_rand.h +125 -0
  468. package/android/install/wolfssl-android/x86_64/include/wolfssl/openssl/hmac.h +98 -0
  469. package/android/install/wolfssl-android/x86_64/include/wolfssl/openssl/kdf.h +45 -0
  470. package/android/install/wolfssl-android/x86_64/include/wolfssl/openssl/lhash.h +64 -0
  471. package/android/install/wolfssl-android/x86_64/include/wolfssl/openssl/md4.h +66 -0
  472. package/android/install/wolfssl-android/x86_64/include/wolfssl/openssl/md5.h +108 -0
  473. package/android/install/wolfssl-android/x86_64/include/wolfssl/openssl/modes.h +45 -0
  474. package/android/install/wolfssl-android/x86_64/include/wolfssl/openssl/obj_mac.h +92 -0
  475. package/android/install/wolfssl-android/x86_64/include/wolfssl/openssl/objects.h +86 -0
  476. package/android/install/wolfssl-android/x86_64/include/wolfssl/openssl/ocsp.h +108 -0
  477. package/android/install/wolfssl-android/x86_64/include/wolfssl/openssl/opensslconf.h +8 -0
  478. package/android/install/wolfssl-android/x86_64/include/wolfssl/openssl/opensslv.h +78 -0
  479. package/android/install/wolfssl-android/x86_64/include/wolfssl/openssl/ossl_typ.h +32 -0
  480. package/android/install/wolfssl-android/x86_64/include/wolfssl/openssl/pem.h +301 -0
  481. package/android/install/wolfssl-android/x86_64/include/wolfssl/openssl/pkcs12.h +57 -0
  482. package/android/install/wolfssl-android/x86_64/include/wolfssl/openssl/pkcs7.h +110 -0
  483. package/android/install/wolfssl-android/x86_64/include/wolfssl/openssl/rand.h +38 -0
  484. package/android/install/wolfssl-android/x86_64/include/wolfssl/openssl/rc4.h +64 -0
  485. package/android/install/wolfssl-android/x86_64/include/wolfssl/openssl/ripemd.h +58 -0
  486. package/android/install/wolfssl-android/x86_64/include/wolfssl/openssl/rsa.h +291 -0
  487. package/android/install/wolfssl-android/x86_64/include/wolfssl/openssl/safestack.h +40 -0
  488. package/android/install/wolfssl-android/x86_64/include/wolfssl/openssl/sha.h +331 -0
  489. package/android/install/wolfssl-android/x86_64/include/wolfssl/openssl/sha3.h +158 -0
  490. package/android/install/wolfssl-android/x86_64/include/wolfssl/openssl/srp.h +33 -0
  491. package/android/install/wolfssl-android/x86_64/include/wolfssl/openssl/ssl.h +1923 -0
  492. package/android/install/wolfssl-android/x86_64/include/wolfssl/openssl/ssl23.h +1 -0
  493. package/android/install/wolfssl-android/x86_64/include/wolfssl/openssl/stack.h +61 -0
  494. package/android/install/wolfssl-android/x86_64/include/wolfssl/openssl/tls1.h +64 -0
  495. package/android/install/wolfssl-android/x86_64/include/wolfssl/openssl/txt_db.h +60 -0
  496. package/android/install/wolfssl-android/x86_64/include/wolfssl/openssl/ui.h +2 -0
  497. package/android/install/wolfssl-android/x86_64/include/wolfssl/openssl/x509.h +227 -0
  498. package/android/install/wolfssl-android/x86_64/include/wolfssl/openssl/x509_vfy.h +50 -0
  499. package/android/install/wolfssl-android/x86_64/include/wolfssl/openssl/x509v3.h +237 -0
  500. package/android/install/wolfssl-android/x86_64/include/wolfssl/options.h +273 -0
  501. package/android/install/wolfssl-android/x86_64/include/wolfssl/quic.h +310 -0
  502. package/android/install/wolfssl-android/x86_64/include/wolfssl/sniffer.h +359 -0
  503. package/android/install/wolfssl-android/x86_64/include/wolfssl/sniffer_error.h +151 -0
  504. package/android/install/wolfssl-android/x86_64/include/wolfssl/ssl.h +6300 -0
  505. package/android/install/wolfssl-android/x86_64/include/wolfssl/test.h +4989 -0
  506. package/android/install/wolfssl-android/x86_64/include/wolfssl/version.h +40 -0
  507. package/android/install/wolfssl-android/x86_64/include/wolfssl/wolfcrypt/aes.h +1074 -0
  508. package/android/install/wolfssl-android/x86_64/include/wolfssl/wolfcrypt/arc4.h +69 -0
  509. package/android/install/wolfssl-android/x86_64/include/wolfssl/wolfcrypt/ascon.h +109 -0
  510. package/android/install/wolfssl-android/x86_64/include/wolfssl/wolfcrypt/asn.h +2855 -0
  511. package/android/install/wolfssl-android/x86_64/include/wolfssl/wolfcrypt/asn_public.h +1009 -0
  512. package/android/install/wolfssl-android/x86_64/include/wolfssl/wolfcrypt/blake2-impl.h +155 -0
  513. package/android/install/wolfssl-android/x86_64/include/wolfssl/wolfcrypt/blake2-int.h +174 -0
  514. package/android/install/wolfssl-android/x86_64/include/wolfssl/wolfcrypt/blake2.h +108 -0
  515. package/android/install/wolfssl-android/x86_64/include/wolfssl/wolfcrypt/camellia.h +116 -0
  516. package/android/install/wolfssl-android/x86_64/include/wolfssl/wolfcrypt/chacha.h +133 -0
  517. package/android/install/wolfssl-android/x86_64/include/wolfssl/wolfcrypt/chacha20_poly1305.h +157 -0
  518. package/android/install/wolfssl-android/x86_64/include/wolfssl/wolfcrypt/cmac.h +168 -0
  519. package/android/install/wolfssl-android/x86_64/include/wolfssl/wolfcrypt/coding.h +107 -0
  520. package/android/install/wolfssl-android/x86_64/include/wolfssl/wolfcrypt/compress.h +60 -0
  521. package/android/install/wolfssl-android/x86_64/include/wolfssl/wolfcrypt/cpuid.h +153 -0
  522. package/android/install/wolfssl-android/x86_64/include/wolfssl/wolfcrypt/cryptocb.h +770 -0
  523. package/android/install/wolfssl-android/x86_64/include/wolfssl/wolfcrypt/curve25519.h +225 -0
  524. package/android/install/wolfssl-android/x86_64/include/wolfssl/wolfcrypt/curve448.h +151 -0
  525. package/android/install/wolfssl-android/x86_64/include/wolfssl/wolfcrypt/des3.h +167 -0
  526. package/android/install/wolfssl-android/x86_64/include/wolfssl/wolfcrypt/dh.h +210 -0
  527. package/android/install/wolfssl-android/x86_64/include/wolfssl/wolfcrypt/dilithium.h +1051 -0
  528. package/android/install/wolfssl-android/x86_64/include/wolfssl/wolfcrypt/dsa.h +121 -0
  529. package/android/install/wolfssl-android/x86_64/include/wolfssl/wolfcrypt/ecc.h +1074 -0
  530. package/android/install/wolfssl-android/x86_64/include/wolfssl/wolfcrypt/eccsi.h +176 -0
  531. package/android/install/wolfssl-android/x86_64/include/wolfssl/wolfcrypt/ed25519.h +239 -0
  532. package/android/install/wolfssl-android/x86_64/include/wolfssl/wolfcrypt/ed448.h +214 -0
  533. package/android/install/wolfssl-android/x86_64/include/wolfssl/wolfcrypt/error-crypt.h +368 -0
  534. package/android/install/wolfssl-android/x86_64/include/wolfssl/wolfcrypt/ext_lms.h +62 -0
  535. package/android/install/wolfssl-android/x86_64/include/wolfssl/wolfcrypt/ext_mlkem.h +74 -0
  536. package/android/install/wolfssl-android/x86_64/include/wolfssl/wolfcrypt/ext_xmss.h +53 -0
  537. package/android/install/wolfssl-android/x86_64/include/wolfssl/wolfcrypt/falcon.h +180 -0
  538. package/android/install/wolfssl-android/x86_64/include/wolfssl/wolfcrypt/fe_448.h +122 -0
  539. package/android/install/wolfssl-android/x86_64/include/wolfssl/wolfcrypt/fe_operations.h +189 -0
  540. package/android/install/wolfssl-android/x86_64/include/wolfssl/wolfcrypt/fips_test.h +131 -0
  541. package/android/install/wolfssl-android/x86_64/include/wolfssl/wolfcrypt/ge_448.h +84 -0
  542. package/android/install/wolfssl-android/x86_64/include/wolfssl/wolfcrypt/ge_operations.h +134 -0
  543. package/android/install/wolfssl-android/x86_64/include/wolfssl/wolfcrypt/hash.h +296 -0
  544. package/android/install/wolfssl-android/x86_64/include/wolfssl/wolfcrypt/hmac.h +231 -0
  545. package/android/install/wolfssl-android/x86_64/include/wolfssl/wolfcrypt/hpke.h +145 -0
  546. package/android/install/wolfssl-android/x86_64/include/wolfssl/wolfcrypt/integer.h +449 -0
  547. package/android/install/wolfssl-android/x86_64/include/wolfssl/wolfcrypt/kdf.h +199 -0
  548. package/android/install/wolfssl-android/x86_64/include/wolfssl/wolfcrypt/lms.h +202 -0
  549. package/android/install/wolfssl-android/x86_64/include/wolfssl/wolfcrypt/logging.h +588 -0
  550. package/android/install/wolfssl-android/x86_64/include/wolfssl/wolfcrypt/md2.h +83 -0
  551. package/android/install/wolfssl-android/x86_64/include/wolfssl/wolfcrypt/md4.h +77 -0
  552. package/android/install/wolfssl-android/x86_64/include/wolfssl/wolfcrypt/md5.h +141 -0
  553. package/android/install/wolfssl-android/x86_64/include/wolfssl/wolfcrypt/mem_track.h +968 -0
  554. package/android/install/wolfssl-android/x86_64/include/wolfssl/wolfcrypt/memory.h +545 -0
  555. package/android/install/wolfssl-android/x86_64/include/wolfssl/wolfcrypt/misc.h +214 -0
  556. package/android/install/wolfssl-android/x86_64/include/wolfssl/wolfcrypt/mlkem.h +377 -0
  557. package/android/install/wolfssl-android/x86_64/include/wolfssl/wolfcrypt/mpi_class.h +1021 -0
  558. package/android/install/wolfssl-android/x86_64/include/wolfssl/wolfcrypt/mpi_superclass.h +96 -0
  559. package/android/install/wolfssl-android/x86_64/include/wolfssl/wolfcrypt/oid_sum.h +1907 -0
  560. package/android/install/wolfssl-android/x86_64/include/wolfssl/wolfcrypt/pkcs12.h +79 -0
  561. package/android/install/wolfssl-android/x86_64/include/wolfssl/wolfcrypt/pkcs7.h +578 -0
  562. package/android/install/wolfssl-android/x86_64/include/wolfssl/wolfcrypt/poly1305.h +207 -0
  563. package/android/install/wolfssl-android/x86_64/include/wolfssl/wolfcrypt/pwdbased.h +81 -0
  564. package/android/install/wolfssl-android/x86_64/include/wolfssl/wolfcrypt/random.h +300 -0
  565. package/android/install/wolfssl-android/x86_64/include/wolfssl/wolfcrypt/rc2.h +68 -0
  566. package/android/install/wolfssl-android/x86_64/include/wolfssl/wolfcrypt/ripemd.h +67 -0
  567. package/android/install/wolfssl-android/x86_64/include/wolfssl/wolfcrypt/rsa.h +494 -0
  568. package/android/install/wolfssl-android/x86_64/include/wolfssl/wolfcrypt/sakke.h +228 -0
  569. package/android/install/wolfssl-android/x86_64/include/wolfssl/wolfcrypt/settings.h +4762 -0
  570. package/android/install/wolfssl-android/x86_64/include/wolfssl/wolfcrypt/sha.h +237 -0
  571. package/android/install/wolfssl-android/x86_64/include/wolfssl/wolfcrypt/sha256.h +360 -0
  572. package/android/install/wolfssl-android/x86_64/include/wolfssl/wolfcrypt/sha3.h +274 -0
  573. package/android/install/wolfssl-android/x86_64/include/wolfssl/wolfcrypt/sha512.h +372 -0
  574. package/android/install/wolfssl-android/x86_64/include/wolfssl/wolfcrypt/signature.h +87 -0
  575. package/android/install/wolfssl-android/x86_64/include/wolfssl/wolfcrypt/siphash.h +101 -0
  576. package/android/install/wolfssl-android/x86_64/include/wolfssl/wolfcrypt/sm2.h +27 -0
  577. package/android/install/wolfssl-android/x86_64/include/wolfssl/wolfcrypt/sm3.h +27 -0
  578. package/android/install/wolfssl-android/x86_64/include/wolfssl/wolfcrypt/sm4.h +27 -0
  579. package/android/install/wolfssl-android/x86_64/include/wolfssl/wolfcrypt/sp_int.h +1396 -0
  580. package/android/install/wolfssl-android/x86_64/include/wolfssl/wolfcrypt/sphincs.h +167 -0
  581. package/android/install/wolfssl-android/x86_64/include/wolfssl/wolfcrypt/srp.h +313 -0
  582. package/android/install/wolfssl-android/x86_64/include/wolfssl/wolfcrypt/tfm.h +941 -0
  583. package/android/install/wolfssl-android/x86_64/include/wolfssl/wolfcrypt/types.h +2383 -0
  584. package/android/install/wolfssl-android/x86_64/include/wolfssl/wolfcrypt/visibility.h +97 -0
  585. package/android/install/wolfssl-android/x86_64/include/wolfssl/wolfcrypt/wc_encrypt.h +126 -0
  586. package/android/install/wolfssl-android/x86_64/include/wolfssl/wolfcrypt/wc_lms.h +506 -0
  587. package/android/install/wolfssl-android/x86_64/include/wolfssl/wolfcrypt/wc_mlkem.h +370 -0
  588. package/android/install/wolfssl-android/x86_64/include/wolfssl/wolfcrypt/wc_port.h +1764 -0
  589. package/android/install/wolfssl-android/x86_64/include/wolfssl/wolfcrypt/wc_xmss.h +285 -0
  590. package/android/install/wolfssl-android/x86_64/include/wolfssl/wolfcrypt/wolfevent.h +120 -0
  591. package/android/install/wolfssl-android/x86_64/include/wolfssl/wolfcrypt/wolfmath.h +175 -0
  592. package/android/install/wolfssl-android/x86_64/include/wolfssl/wolfcrypt/xmss.h +203 -0
  593. package/android/install/wolfssl-android/x86_64/include/wolfssl/wolfio.h +1035 -0
  594. package/android/install/wolfssl-android/x86_64/lib/libwolfssl.a +0 -0
  595. package/android/install/wolfssl-android/x86_64/lib/libwolfssl.la +41 -0
  596. package/android/install/wolfssl-android/x86_64/lib/pkgconfig/wolfssl.pc +11 -0
  597. package/android/install/wolfssl-android/x86_64/share/doc/wolfssl/QUIC.md +117 -0
  598. package/android/install/wolfssl-android/x86_64/share/doc/wolfssl/README.txt +8 -0
  599. package/android/install/wolfssl-android/x86_64/share/doc/wolfssl/example/async_client.c +245 -0
  600. package/android/install/wolfssl-android/x86_64/share/doc/wolfssl/example/async_server.c +331 -0
  601. package/android/install/wolfssl-android/x86_64/share/doc/wolfssl/example/client.c +4885 -0
  602. package/android/install/wolfssl-android/x86_64/share/doc/wolfssl/example/echoclient.c +341 -0
  603. package/android/install/wolfssl-android/x86_64/share/doc/wolfssl/example/echoserver.c +498 -0
  604. package/android/install/wolfssl-android/x86_64/share/doc/wolfssl/example/sctp-client-dtls.c +135 -0
  605. package/android/install/wolfssl-android/x86_64/share/doc/wolfssl/example/sctp-client.c +78 -0
  606. package/android/install/wolfssl-android/x86_64/share/doc/wolfssl/example/sctp-server-dtls.c +134 -0
  607. package/android/install/wolfssl-android/x86_64/share/doc/wolfssl/example/sctp-server.c +83 -0
  608. package/android/install/wolfssl-android/x86_64/share/doc/wolfssl/example/server.c +4124 -0
  609. package/android/install/wolfssl-android/x86_64/share/doc/wolfssl/example/tls_bench.c +2357 -0
  610. package/android/install/wolfssl-android/x86_64/share/doc/wolfssl/taoCert.txt +176 -0
  611. package/android/src/main/cpp/CMakeLists.txt +35 -29
  612. package/android/src/main/cpp/ngtcp2_jni.cpp +56 -50
  613. package/android/src/main/kotlin/ai/annadata/mqttquic/MqttQuicPlugin.kt +18 -3
  614. package/android/src/main/kotlin/ai/annadata/mqttquic/client/MQTTClient.kt +9 -6
  615. package/android/src/main/kotlin/ai/annadata/mqttquic/mqtt/MQTTProtocol.kt +3 -3
  616. package/android/src/main/kotlin/ai/annadata/mqttquic/mqtt/MQTTTypes.kt +15 -15
  617. package/android/src/main/kotlin/ai/annadata/mqttquic/quic/NGTCP2Client.kt +1 -0
  618. package/build-native.sh +397 -0
  619. package/deps-versions.sh +25 -0
  620. package/dist/esm/definitions.d.ts +20 -0
  621. package/dist/esm/definitions.d.ts.map +1 -1
  622. package/dist/esm/web.d.ts +26 -3
  623. package/dist/esm/web.d.ts.map +1 -1
  624. package/dist/esm/web.js +230 -10
  625. package/dist/esm/web.js.map +1 -1
  626. package/dist/plugin.cjs.js +11363 -13
  627. package/dist/plugin.cjs.js.map +1 -1
  628. package/dist/plugin.js +11364 -14
  629. package/dist/plugin.js.map +1 -1
  630. package/docs/ARCHITECTURAL_ANALYSIS.md +710 -0
  631. package/docs/CAPACITOR_MQTT_QUIC_PRODUCTION_PLUGIN.md +190 -0
  632. package/docs/CAPACITOR_VERSION_SUPPORT.md +65 -0
  633. package/docs/IMPLEMENTATION_SUMMARY.md +246 -0
  634. package/docs/MQTT5_CLIENT_COMPLIANCE.md +48 -0
  635. package/docs/MQTT5_IMPLEMENTATION_COMPLETE.md +178 -0
  636. package/docs/MQTT_VERSION_ANALYSIS.md +233 -0
  637. package/docs/NGTCP2_IMPLEMENTATION_STATUS.md +214 -0
  638. package/docs/NGTCP2_INTEGRATION_PLAN.md +597 -0
  639. package/docs/P0_P1_CHANGELOG.md +79 -0
  640. package/docs/PRODUCTION_PUBLISH_STEPS.md +167 -0
  641. package/docs/PROJECT_OVERVIEW.md +193 -0
  642. package/ios/.swiftpm/xcode/xcuserdata/annadata.xcuserdatad/xcschemes/xcschememanagement.plist +1 -1
  643. package/ios/{MqttQuicPlugin.podspec → AnnadataCapacitorMqttQuic.podspec} +4 -4
  644. package/ios/App/App/capacitor.config.json +1 -1
  645. package/ios/NGTCP2_BUILD_INSTRUCTIONS.md +15 -3
  646. package/ios/Package.swift +7 -8
  647. package/ios/Sources/MqttQuicPlugin/MqttQuicPlugin.swift +6 -0
  648. package/ios/Sources/MqttQuicPlugin/QUIC/NGTCP2Bridge.mm +6 -0
  649. package/ios/Tests/MQTTProtocolTests.swift +1 -1
  650. package/ios/build-openssl.sh +1 -1
  651. package/ios/libs/MqttQuicLibs.xcframework/Info.plist +44 -0
  652. package/ios/libs/MqttQuicLibs.xcframework/ios-arm64/libmqttquic_native_device.a +0 -0
  653. package/ios/libs/MqttQuicLibs.xcframework/ios-arm64_x86_64-simulator/libmqttquic_native_simulator.a +0 -0
  654. package/ios/libs/libnghttp3.a +0 -0
  655. package/ios/libs/libngtcp2.a +0 -0
  656. package/ios/libs/libngtcp2_crypto_wolfssl.a +0 -0
  657. package/ios/libs/libwolfssl.a +0 -0
  658. package/ios/libs-simulator/libnghttp3.a +0 -0
  659. package/ios/libs-simulator/libngtcp2.a +0 -0
  660. package/ios/libs-simulator/libngtcp2_crypto_wolfssl.a +0 -0
  661. package/ios/libs-simulator/libwolfssl.a +0 -0
  662. package/ios/libs-simulator-x86_64/libnghttp3.a +0 -0
  663. package/ios/libs-simulator-x86_64/libngtcp2.a +0 -0
  664. package/ios/libs-simulator-x86_64/libngtcp2_crypto_wolfssl.a +0 -0
  665. package/ios/libs-simulator-x86_64/libwolfssl.a +0 -0
  666. package/package.json +26 -10
@@ -0,0 +1,968 @@
1
+ /* mem_track.h
2
+ *
3
+ * Copyright (C) 2006-2025 wolfSSL Inc.
4
+ *
5
+ * This file is part of wolfSSL.
6
+ *
7
+ * wolfSSL is free software; you can redistribute it and/or modify
8
+ * it under the terms of the GNU General Public License as published by
9
+ * the Free Software Foundation; either version 3 of the License, or
10
+ * (at your option) any later version.
11
+ *
12
+ * wolfSSL is distributed in the hope that it will be useful,
13
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
14
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15
+ * GNU General Public License for more details.
16
+ *
17
+ * You should have received a copy of the GNU General Public License
18
+ * along with this program; if not, write to the Free Software
19
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA
20
+ */
21
+
22
+ /* Memory and stack use tracking */
23
+
24
+ #ifndef WOLFSSL_MEM_TRACK_H
25
+ #define WOLFSSL_MEM_TRACK_H
26
+
27
+ /* The memory tracker overrides the wolfSSL memory callback system and uses a
28
+ * static to track the total, peak and currently allocated bytes.
29
+ *
30
+ * If you are already using the memory callbacks then enabling this will
31
+ * override the memory callbacks and prevent your memory callbacks from
32
+ * working. This assumes malloc() and free() are available. Feel free to
33
+ * customize this for your needs.
34
+
35
+ * The enable this feature define the following:
36
+ * #define USE_WOLFSSL_MEMORY
37
+ * #define WOLFSSL_TRACK_MEMORY
38
+ *
39
+ * On startup call:
40
+ * InitMemoryTracker();
41
+ *
42
+ * When ready to dump the memory report call:
43
+ * ShowMemoryTracker();
44
+ *
45
+ * Report example:
46
+ * total Allocs = 228
47
+ * total Bytes = 93442
48
+ * peak Bytes = 8840
49
+ * current Bytes = 0
50
+ *
51
+ *
52
+ * You can also:
53
+ * #define WOLFSSL_DEBUG_MEMORY
54
+ *
55
+ * To print every alloc/free along with the function and line number.
56
+ * Example output:
57
+ * Alloc: 0x7fa14a500010 -> 120 at wc_InitRng:496
58
+ * Free: 0x7fa14a500010 -> 120 at wc_FreeRng:606
59
+ */
60
+
61
+ #include "wolfssl/wolfcrypt/settings.h"
62
+ #include "wolfssl/wolfcrypt/types.h"
63
+ #include "wolfssl/wolfcrypt/logging.h"
64
+ #include "wolfssl/wolfcrypt/error-crypt.h"
65
+ #include "wolfssl/wolfcrypt/memory.h"
66
+
67
+ #if defined(WOLFSSL_TRACK_MEMORY) || defined(HAVE_STACK_SIZE) || \
68
+ defined(HAVE_STACK_SIZE_VERBOSE)
69
+ #ifdef NO_STDIO_FILESYSTEM
70
+ #define wc_mem_printf(...) printf(__VA_ARGS__)
71
+ #else
72
+ #include <stdio.h>
73
+ #define wc_mem_printf(...) fprintf(stderr, __VA_ARGS__)
74
+ #endif
75
+ #endif
76
+
77
+ /* Track Memory */
78
+ #if defined(WOLFSSL_TRACK_MEMORY) && defined(USE_WOLFSSL_MEMORY) && \
79
+ !defined(WOLFSSL_STATIC_MEMORY)
80
+
81
+ #define DO_MEM_STATS
82
+ #if (defined(__linux__) && !defined(WOLFSSL_KERNEL_MODE)) || defined(__MACH__)
83
+ #define DO_MEM_LIST
84
+ #endif
85
+
86
+ typedef struct memoryStats {
87
+ long totalAllocs; /* number of allocations */
88
+ long totalDeallocs; /* number of deallocations */
89
+ long totalBytes; /* total number of bytes allocated */
90
+ long peakBytes; /* concurrent max bytes */
91
+ long currentBytes; /* total current bytes in use */
92
+ #ifdef WOLFSSL_TRACK_MEMORY_VERBOSE
93
+ long peakAllocsTripOdometer; /* peak number of concurrent allocations,
94
+ * subject to reset by
95
+ * wolfCrypt_heap_peak_checkpoint()
96
+ */
97
+ long peakBytesTripOdometer; /* peak concurrent bytes, subject to reset
98
+ * by wolfCrypt_heap_peak_checkpoint()
99
+ */
100
+ #endif
101
+ } memoryStats;
102
+
103
+ typedef struct memHint {
104
+ size_t thisSize; /* size of this memory */
105
+
106
+ #ifdef DO_MEM_LIST
107
+ struct memHint* next;
108
+ struct memHint* prev;
109
+ #ifdef WOLFSSL_DEBUG_MEMORY
110
+ const char* func;
111
+ unsigned int line;
112
+ #endif
113
+ #endif
114
+ void* thisMemory; /* actual memory for user */
115
+ } memHint;
116
+
117
+ typedef struct memoryTrack {
118
+ union {
119
+ memHint hint;
120
+ /* make sure we have strong alignment */
121
+ byte alignit[sizeof(memHint) + ((16-1) & ~(16-1))];
122
+ } u;
123
+ } memoryTrack;
124
+
125
+ #ifdef DO_MEM_LIST
126
+ /* track allocations and report at end */
127
+ typedef struct memoryList {
128
+ memHint* head;
129
+ memHint* tail;
130
+ word32 count;
131
+ } memoryList;
132
+ #endif
133
+
134
+
135
+ static memoryStats ourMemStats;
136
+
137
+ #ifdef DO_MEM_LIST
138
+ #include <pthread.h>
139
+ static memoryList ourMemList;
140
+ static pthread_mutex_t memLock = PTHREAD_MUTEX_INITIALIZER;
141
+ #endif
142
+
143
+ #ifdef WOLFSSL_DEBUG_MEMORY
144
+ static WC_INLINE void* TrackMalloc(size_t sz, const char* func,
145
+ unsigned int line)
146
+ #else
147
+ static WC_INLINE void* TrackMalloc(size_t sz)
148
+ #endif
149
+ {
150
+ memoryTrack* mt;
151
+ memHint* header;
152
+
153
+ if (sz == 0)
154
+ return NULL;
155
+
156
+ #ifdef FREERTOS
157
+ mt = (memoryTrack*)pvPortMalloc(sizeof(memoryTrack) + sz); /* native heap */
158
+ #else
159
+ mt = (memoryTrack*)malloc(sizeof(memoryTrack) + sz); /* native heap */
160
+ #endif
161
+ if (mt == NULL)
162
+ return NULL;
163
+
164
+ header = &mt->u.hint;
165
+ header->thisSize = sz;
166
+ header->thisMemory = (byte*)mt + sizeof(memoryTrack);
167
+
168
+ #ifdef WOLFSSL_DEBUG_MEMORY
169
+ #ifdef WOLFSSL_DEBUG_MEMORY_PRINT
170
+ wc_mem_printf("Alloc: %p -> %u at %s:%d\n",
171
+ header->thisMemory, (word32)sz, func, line);
172
+ #else
173
+ (void)func;
174
+ (void)line;
175
+ #endif
176
+ #endif
177
+ #if !defined(SINGLE_THREADED) && (defined(DO_MEM_LIST) || defined(DO_MEM_STATS))
178
+ if (pthread_mutex_lock(&memLock) == 0)
179
+ {
180
+ #endif
181
+
182
+ #ifdef DO_MEM_STATS
183
+ ourMemStats.totalAllocs++;
184
+ ourMemStats.totalBytes += sz;
185
+ ourMemStats.currentBytes += sz;
186
+ #ifdef WOLFSSL_TRACK_MEMORY_VERBOSE
187
+ if (ourMemStats.peakAllocsTripOdometer < ourMemStats.totalAllocs -
188
+ ourMemStats.totalDeallocs) {
189
+ ourMemStats.peakAllocsTripOdometer = ourMemStats.totalAllocs -
190
+ ourMemStats.totalDeallocs;
191
+ }
192
+ if (ourMemStats.peakBytesTripOdometer < ourMemStats.currentBytes)
193
+ #endif
194
+ {
195
+ #ifdef WOLFSSL_TRACK_MEMORY_VERBOSE
196
+ ourMemStats.peakBytesTripOdometer = ourMemStats.currentBytes;
197
+ #endif
198
+ if (ourMemStats.currentBytes > ourMemStats.peakBytes)
199
+ ourMemStats.peakBytes = ourMemStats.currentBytes;
200
+ }
201
+
202
+ #endif /* DO_MEM_STATS */
203
+
204
+ #ifdef DO_MEM_LIST
205
+ #ifdef WOLFSSL_DEBUG_MEMORY
206
+ header->func = func;
207
+ header->line = line;
208
+ #endif
209
+
210
+ /* Setup event */
211
+ header->next = NULL;
212
+ if (ourMemList.tail == NULL) {
213
+ ourMemList.head = header;
214
+ header->prev = NULL;
215
+ }
216
+ else {
217
+ ourMemList.tail->next = header;
218
+ header->prev = ourMemList.tail;
219
+ }
220
+ ourMemList.tail = header; /* add to the end either way */
221
+ ourMemList.count++;
222
+ #endif
223
+ #if !defined(SINGLE_THREADED) && (defined(DO_MEM_LIST) || defined(DO_MEM_STATS))
224
+ pthread_mutex_unlock(&memLock);
225
+ }
226
+ #endif /* DO_MEM_LIST */
227
+
228
+ return header->thisMemory;
229
+ }
230
+
231
+
232
+ #ifdef WOLFSSL_DEBUG_MEMORY
233
+ static WC_INLINE void TrackFree(void* ptr, const char* func, unsigned int line)
234
+ #else
235
+ static WC_INLINE void TrackFree(void* ptr)
236
+ #endif
237
+ {
238
+ memoryTrack* mt;
239
+ memHint* header;
240
+ size_t sz;
241
+
242
+ if (ptr == NULL) {
243
+ return;
244
+ }
245
+
246
+ mt = (memoryTrack*)((byte*)ptr - sizeof(memoryTrack));
247
+ header = &mt->u.hint;
248
+ sz = header->thisSize;
249
+
250
+ #if !defined(SINGLE_THREADED) && (defined(DO_MEM_LIST) || defined(DO_MEM_STATS))
251
+ if (pthread_mutex_lock(&memLock) == 0)
252
+ {
253
+ #endif
254
+
255
+ #ifdef DO_MEM_STATS
256
+ ourMemStats.currentBytes -= header->thisSize;
257
+ ourMemStats.totalDeallocs++;
258
+ #endif
259
+
260
+ #ifdef DO_MEM_LIST
261
+ if (header == ourMemList.head && header == ourMemList.tail) {
262
+ ourMemList.head = NULL;
263
+ ourMemList.tail = NULL;
264
+ }
265
+ else if (header == ourMemList.head) {
266
+ ourMemList.head = header->next;
267
+ ourMemList.head->prev = NULL;
268
+ }
269
+ else if (header == ourMemList.tail) {
270
+ ourMemList.tail = header->prev;
271
+ ourMemList.tail->next = NULL;
272
+ }
273
+ else {
274
+ memHint* next = header->next;
275
+ memHint* prev = header->prev;
276
+ if (next)
277
+ next->prev = prev;
278
+ if (prev)
279
+ prev->next = next;
280
+ }
281
+ ourMemList.count--;
282
+ #endif
283
+
284
+ #if !defined(SINGLE_THREADED) && (defined(DO_MEM_LIST) || defined(DO_MEM_STATS))
285
+ pthread_mutex_unlock(&memLock);
286
+ }
287
+ #endif
288
+
289
+ #ifdef WOLFSSL_DEBUG_MEMORY
290
+ #ifdef WOLFSSL_DEBUG_MEMORY_PRINT
291
+ wc_mem_printf("Free: %p -> %u at %s:%d\n", ptr, (word32)sz, func, line);
292
+ #else
293
+ (void)func;
294
+ (void)line;
295
+ #endif
296
+ #endif
297
+ (void)sz;
298
+
299
+ #ifdef FREERTOS
300
+ vPortFree(mt); /* native heap */
301
+ #else
302
+ free(mt); /* native heap */
303
+ #endif
304
+ }
305
+
306
+
307
+ #ifdef WOLFSSL_DEBUG_MEMORY
308
+ static WC_INLINE void* TrackRealloc(void* ptr, size_t sz, const char* func,
309
+ unsigned int line)
310
+ #else
311
+ static WC_INLINE void* TrackRealloc(void* ptr, size_t sz)
312
+ #endif
313
+ {
314
+ #ifdef WOLFSSL_DEBUG_MEMORY
315
+ void* ret = TrackMalloc(sz, func, line);
316
+ #else
317
+ void* ret = TrackMalloc(sz);
318
+ #endif
319
+
320
+ if (ptr) {
321
+ /* if realloc is bigger, don't overread old ptr */
322
+ memoryTrack* mt;
323
+ memHint* header;
324
+
325
+ mt = (memoryTrack*)((byte*)ptr - sizeof(memoryTrack));
326
+ header = &mt->u.hint;
327
+
328
+ if (header->thisSize < sz)
329
+ sz = header->thisSize;
330
+ }
331
+
332
+ if (ret && ptr)
333
+ XMEMCPY(ret, ptr, sz);
334
+
335
+ if (ret) {
336
+ #ifdef WOLFSSL_DEBUG_MEMORY
337
+ TrackFree(ptr, func, line);
338
+ #else
339
+ TrackFree(ptr);
340
+ #endif
341
+ }
342
+
343
+ return ret;
344
+ }
345
+
346
+ static wolfSSL_Malloc_cb mfDefault = NULL;
347
+ static wolfSSL_Free_cb ffDefault = NULL;
348
+ static wolfSSL_Realloc_cb rfDefault = NULL;
349
+
350
+ static WC_INLINE int InitMemoryTracker(void)
351
+ {
352
+ int ret;
353
+
354
+ ret = wolfSSL_GetAllocators(&mfDefault, &ffDefault, &rfDefault);
355
+ if (ret < 0) {
356
+ wc_mem_printf("wolfSSL GetAllocators failed to get the defaults\n");
357
+ }
358
+ ret = wolfSSL_SetAllocators(TrackMalloc, TrackFree, TrackRealloc);
359
+ if (ret < 0) {
360
+ wc_mem_printf("wolfSSL SetAllocators failed for track memory\n");
361
+ return ret;
362
+ }
363
+
364
+ #ifdef DO_MEM_LIST
365
+ if (pthread_mutex_lock(&memLock) == 0)
366
+ #endif
367
+ {
368
+ #ifdef DO_MEM_STATS
369
+ ourMemStats.totalAllocs = 0;
370
+ ourMemStats.totalDeallocs = 0;
371
+ ourMemStats.totalBytes = 0;
372
+ ourMemStats.peakBytes = 0;
373
+ ourMemStats.currentBytes = 0;
374
+ #ifdef WOLFSSL_TRACK_MEMORY_VERBOSE
375
+ ourMemStats.peakAllocsTripOdometer = 0;
376
+ ourMemStats.peakBytesTripOdometer = 0;
377
+ #endif
378
+ #endif /* DO_MEM_STATS */
379
+
380
+ #ifdef DO_MEM_LIST
381
+ XMEMSET(&ourMemList, 0, sizeof(ourMemList));
382
+
383
+ pthread_mutex_unlock(&memLock);
384
+ #endif
385
+ }
386
+
387
+ return ret;
388
+ }
389
+
390
+ static WC_INLINE void ShowMemoryTracker(void)
391
+ {
392
+ #ifdef DO_MEM_LIST
393
+ if (pthread_mutex_lock(&memLock) == 0)
394
+ #endif
395
+ {
396
+ #ifdef DO_MEM_STATS
397
+ wc_mem_printf("total Allocs = %9ld\n", ourMemStats.totalAllocs);
398
+ wc_mem_printf("total Deallocs = %9ld\n", ourMemStats.totalDeallocs);
399
+ wc_mem_printf("total Bytes = %9ld\n", ourMemStats.totalBytes);
400
+ wc_mem_printf("peak Bytes = %9ld\n", ourMemStats.peakBytes);
401
+ wc_mem_printf("current Bytes = %9ld\n", ourMemStats.currentBytes);
402
+ #endif
403
+
404
+ #ifdef DO_MEM_LIST
405
+ if (ourMemList.count > 0) {
406
+ /* print list of allocations */
407
+ memHint* header;
408
+ for (header = ourMemList.head;
409
+ header != NULL;
410
+ header = header->next) {
411
+ #ifdef WOLFSSL_DEBUG_MEMORY
412
+ wc_mem_printf("Leak: Ptr %p, Size %u, Func %s, Line %d\n",
413
+ (byte*)header + sizeof(memHint),
414
+ (unsigned int)header->thisSize, header->func, header->line);
415
+ #else
416
+ wc_mem_printf("Leak: Ptr %p, Size %u\n",
417
+ (byte*)header + sizeof(memHint),
418
+ (unsigned int)header->thisSize);
419
+ #endif
420
+ }
421
+ }
422
+
423
+ pthread_mutex_unlock(&memLock);
424
+ #endif
425
+ }
426
+ }
427
+
428
+ static WC_INLINE int CleanupMemoryTracker(void)
429
+ {
430
+ /* restore default allocators */
431
+ return wolfSSL_SetAllocators(mfDefault, ffDefault, rfDefault);
432
+ }
433
+ #endif /* WOLFSSL_TRACK_MEMORY && USE_WOLFSSL_MEMORY && \
434
+ !WOLFSSL_STATIC_MEMORY */
435
+
436
+
437
+ #ifdef HAVE_STACK_SIZE
438
+
439
+ #include <stdio.h>
440
+
441
+ #ifdef HAVE_PTHREAD
442
+ #include <pthread.h>
443
+ #include <errno.h>
444
+ #include <sched.h>
445
+ #include <unistd.h>
446
+ #endif
447
+
448
+ typedef void* (*thread_func)(void* args);
449
+ #define STACK_CHECK_VAL 0x01
450
+
451
+ struct stack_size_debug_context {
452
+ unsigned char *myStack;
453
+ size_t stackSize;
454
+ #ifdef HAVE_STACK_SIZE_VERBOSE
455
+ size_t *stackSizeHWM_ptr;
456
+ thread_func fn;
457
+ void *args;
458
+ #endif
459
+ };
460
+
461
+ struct func_args; /* forward declaration */
462
+
463
+ #ifdef HAVE_STACK_SIZE_VERBOSE
464
+
465
+ /*
466
+ * Allow bare-metal targets to register a statically allocated stack region
467
+ * that should be inspected for high water mark usage. The caller is expected
468
+ * to invoke this once early during startup, before the stack contains live
469
+ * frames, using linker-provided low/high water symbols.
470
+ *
471
+ * Example (GNU ld symbols) on a downward-growing (ARM Cortex-M) stack:
472
+ * extern unsigned char _estack; - one past highest address
473
+ * #define WOLFSSL_STACK_BYTES (12 * 1024U)
474
+ * StackSizeCheck_SetStackRegion((unsigned char*)(&_estack) -
475
+ * WOLFSSL_STACK_BYTES, WOLFSSL_STACK_BYTES, NULL);
476
+ * or simply
477
+ * STACK_SIZE_CHECK_INIT_TOP(&_estack, WOLFSSL_STACK_BYTES);
478
+ *
479
+ * The initializer samples the current stack pointer and avoids clobbering
480
+ * the live call frames. Call it as early as practical (right after the C
481
+ * runtime start-up, with interrupts masked) so that most of the stack can be
482
+ * painted with the sentinel before it is used.
483
+ */
484
+ static WC_INLINE int StackSizeCheck_SetStackRegion(unsigned char* stackBase,
485
+ size_t stackSize, size_t* hwmStorage)
486
+ {
487
+ volatile unsigned char currentSpVar;
488
+ unsigned char* currentSp;
489
+ unsigned char* stackTop;
490
+
491
+ if (stackBase == NULL || stackSize == 0)
492
+ return -BAD_FUNC_ARG;
493
+
494
+ StackSizeCheck_myStack = stackBase;
495
+ StackSizeCheck_stackSize = stackSize;
496
+
497
+ if (hwmStorage != NULL) {
498
+ StackSizeCheck_stackSizeHWM_ptr = hwmStorage;
499
+ *StackSizeCheck_stackSizeHWM_ptr = 0;
500
+ }
501
+ else {
502
+ StackSizeCheck_stackSizeHWM = 0;
503
+ StackSizeCheck_stackSizeHWM_ptr = &StackSizeCheck_stackSizeHWM;
504
+ }
505
+
506
+ stackTop = stackBase + stackSize;
507
+ StackSizeCheck_stackOffsetPointer = (void*)stackTop;
508
+
509
+ currentSp = (unsigned char*)&currentSpVar;
510
+
511
+ if (currentSp >= stackBase && currentSp <= stackTop) {
512
+ size_t lowerSpan = (size_t)(currentSp - stackBase);
513
+ size_t upperSpan = (size_t)(stackTop - currentSp);
514
+
515
+ if (lowerSpan >= upperSpan) {
516
+ if (lowerSpan > 0) {
517
+ XMEMSET(stackBase, STACK_CHECK_VAL, lowerSpan);
518
+ }
519
+ }
520
+ else {
521
+ if (upperSpan > 0) {
522
+ XMEMSET(currentSp, STACK_CHECK_VAL, upperSpan);
523
+ }
524
+ }
525
+ }
526
+ else {
527
+ XMEMSET(StackSizeCheck_myStack, STACK_CHECK_VAL, stackSize);
528
+ }
529
+
530
+ return 0;
531
+ }
532
+
533
+ #ifdef HAVE_STACK_SIZE_VERBOSE
534
+ static WC_INLINE int StackSizeCheck_Rebaseline(void)
535
+ {
536
+ size_t* hwmStore;
537
+
538
+ if (StackSizeCheck_myStack == NULL || StackSizeCheck_stackSize == 0)
539
+ return -BAD_FUNC_ARG;
540
+
541
+ hwmStore = StackSizeCheck_stackSizeHWM_ptr;
542
+
543
+ if (hwmStore == NULL || hwmStore == &StackSizeCheck_stackSizeHWM)
544
+ hwmStore = NULL;
545
+
546
+ return StackSizeCheck_SetStackRegion(StackSizeCheck_myStack,
547
+ StackSizeCheck_stackSize, hwmStore);
548
+ }
549
+ #endif
550
+
551
+ #ifndef STACK_SIZE_CHECK_INIT_REGION
552
+ #define STACK_SIZE_CHECK_INIT_REGION(lowAddr, highAddr) \
553
+ StackSizeCheck_SetStackRegion((unsigned char*)(lowAddr), \
554
+ (size_t)((char*)(highAddr) - (char*)(lowAddr)), NULL)
555
+ #endif
556
+
557
+ #ifndef STACK_SIZE_CHECK_INIT_REGION_EX
558
+ #define STACK_SIZE_CHECK_INIT_REGION_EX(lowAddr, highAddr, hwmPtr) \
559
+ StackSizeCheck_SetStackRegion((unsigned char*)(lowAddr), \
560
+ (size_t)((char*)(highAddr) - (char*)(lowAddr)), (hwmPtr))
561
+ #endif
562
+
563
+ #ifndef STACK_SIZE_CHECK_INIT_TOP
564
+ #define STACK_SIZE_CHECK_INIT_TOP(topAddr, sizeBytes) \
565
+ StackSizeCheck_SetStackRegion( \
566
+ (unsigned char*)((unsigned char*)(topAddr) - (size_t)(sizeBytes)), \
567
+ (size_t)(sizeBytes), NULL)
568
+ #endif
569
+
570
+ #ifndef STACK_SIZE_CHECK_INIT_TOP_EX
571
+ #define STACK_SIZE_CHECK_INIT_TOP_EX(topAddr, sizeBytes, hwmPtr) \
572
+ StackSizeCheck_SetStackRegion( \
573
+ (unsigned char*)((unsigned char*)(topAddr) - (size_t)(sizeBytes)), \
574
+ (size_t)(sizeBytes), (hwmPtr))
575
+ #endif
576
+
577
+ /* per-subtest stack high water mark tracking.
578
+ *
579
+ * enable with
580
+ *
581
+ * ./configure --enable-stacksize=verbose [...]
582
+ */
583
+
584
+ static void* debug_stack_size_verbose_shim(
585
+ struct stack_size_debug_context *shim_args)
586
+ {
587
+ StackSizeCheck_myStack = shim_args->myStack;
588
+ StackSizeCheck_stackSize = shim_args->stackSize;
589
+ StackSizeCheck_stackSizeHWM_ptr = shim_args->stackSizeHWM_ptr;
590
+ return shim_args->fn(shim_args->args);
591
+ }
592
+
593
+ static WC_INLINE int StackSizeSetOffset(const char *funcname, void *p)
594
+ {
595
+ if (StackSizeCheck_myStack == NULL)
596
+ return -BAD_FUNC_ARG;
597
+
598
+ StackSizeCheck_stackOffsetPointer = p;
599
+
600
+ printf("setting stack relative offset reference mark in %s to +%lu\n",
601
+ funcname, (unsigned long)((char*)(StackSizeCheck_myStack +
602
+ StackSizeCheck_stackSize) - (char *)p));
603
+
604
+ return 0;
605
+ }
606
+
607
+ static WC_INLINE ssize_t StackSizeHWM(void)
608
+ {
609
+ size_t i;
610
+ ssize_t used;
611
+
612
+ if (StackSizeCheck_myStack == NULL)
613
+ return -BAD_FUNC_ARG;
614
+
615
+ for (i = 0; i < StackSizeCheck_stackSize; i++) {
616
+ if (StackSizeCheck_myStack[i] != STACK_CHECK_VAL) {
617
+ break;
618
+ }
619
+ }
620
+
621
+ used = StackSizeCheck_stackSize - i;
622
+ if ((ssize_t)*StackSizeCheck_stackSizeHWM_ptr < used)
623
+ *StackSizeCheck_stackSizeHWM_ptr = used;
624
+
625
+ return used;
626
+ }
627
+
628
+ static WC_INLINE ssize_t StackSizeHWM_OffsetCorrected(void)
629
+ {
630
+ ssize_t used = StackSizeHWM();
631
+ if (used < 0)
632
+ return used;
633
+ if (StackSizeCheck_stackOffsetPointer) {
634
+ used -= (ssize_t)(((char *)StackSizeCheck_myStack +
635
+ StackSizeCheck_stackSize) -
636
+ (char *)StackSizeCheck_stackOffsetPointer);
637
+ }
638
+ return used;
639
+ }
640
+
641
+ static
642
+ #ifdef __GNUC__
643
+ __attribute__((unused)) __attribute__((noinline))
644
+ #endif
645
+ int StackSizeHWMReset(void)
646
+ {
647
+ volatile ssize_t i;
648
+
649
+ if (StackSizeCheck_myStack == NULL)
650
+ return -BAD_FUNC_ARG;
651
+
652
+ for (i = (ssize_t)((char *)&i - (char *)StackSizeCheck_myStack) -
653
+ (ssize_t)sizeof(i) - 1; i >= 0; --i) {
654
+ StackSizeCheck_myStack[i] = STACK_CHECK_VAL;
655
+ }
656
+
657
+ return 0;
658
+ }
659
+
660
+ #define STACK_SIZE_CHECKPOINT(...) ({ \
661
+ ssize_t HWM = StackSizeHWM_OffsetCorrected(); \
662
+ __VA_ARGS__; \
663
+ printf(" relative stack peak usage = %ld bytes\n", (long int)HWM); \
664
+ StackSizeHWMReset(); \
665
+ })
666
+
667
+ #define STACK_SIZE_CHECKPOINT_MSG(msg) ({ \
668
+ ssize_t HWM = StackSizeHWM_OffsetCorrected(); \
669
+ wc_mem_printf("%ld\t%s\n", (long int)HWM, msg); \
670
+ StackSizeHWMReset(); \
671
+ })
672
+
673
+ #define STACK_SIZE_CHECKPOINT_WITH_MAX_CHECK(max, ...) ({ \
674
+ ssize_t HWM = StackSizeHWM_OffsetCorrected(); \
675
+ int _ret; \
676
+ __VA_ARGS__; \
677
+ printf(" relative stack peak usage = %ld bytes\n", (long int)HWM); \
678
+ _ret = StackSizeHWMReset(); \
679
+ if ((max >= 0) && (HWM > (ssize_t)(max))) { \
680
+ wc_mem_printf( \
681
+ " relative stack usage at %s L%d exceeds designated " \
682
+ "max %ld bytes.\n", \
683
+ __FILE__, __LINE__, (long int)(max)); \
684
+ _ret = -1; \
685
+ } \
686
+ _ret; \
687
+ })
688
+
689
+
690
+ #if defined(__GNUC__) || defined(__clang__)
691
+ #define STACK_SIZE_INIT() \
692
+ (void)StackSizeSetOffset(__FUNCTION__, __builtin_frame_address(0))
693
+ #endif
694
+
695
+ #endif /* HAVE_STACK_SIZE_VERBOSE */
696
+
697
+ #ifdef HAVE_PTHREAD
698
+
699
+ static WC_INLINE int StackSizeCheck(struct func_args* args, thread_func tf)
700
+ {
701
+ size_t i;
702
+ int ret;
703
+ void* status;
704
+ unsigned char* myStack = NULL;
705
+ size_t stackSize = 1024*1024*2;
706
+ pthread_attr_t myAttr;
707
+ pthread_t threadId;
708
+ #ifdef HAVE_STACK_SIZE_VERBOSE
709
+ struct stack_size_debug_context shim_args;
710
+ #endif
711
+
712
+ #ifdef PTHREAD_STACK_MIN
713
+ if (stackSize < (size_t)PTHREAD_STACK_MIN)
714
+ stackSize = PTHREAD_STACK_MIN;
715
+ #endif
716
+
717
+ ret = posix_memalign((void**)&myStack, sysconf(_SC_PAGESIZE), stackSize); /* native heap */
718
+ if (ret != 0 || myStack == NULL) {
719
+ wc_mem_printf("posix_memalign failed\n");
720
+ return -1;
721
+ }
722
+
723
+ XMEMSET(myStack, STACK_CHECK_VAL, stackSize);
724
+
725
+ ret = pthread_attr_init(&myAttr);
726
+ if (ret != 0) {
727
+ wc_mem_printf("attr_init failed\n");
728
+ return ret;
729
+ }
730
+
731
+ ret = pthread_attr_setstack(&myAttr, myStack, stackSize);
732
+ if (ret != 0) {
733
+ wc_mem_printf("attr_setstackaddr failed\n");
734
+ return ret;
735
+ }
736
+
737
+ #ifdef HAVE_STACK_SIZE_VERBOSE
738
+ StackSizeCheck_stackSizeHWM = 0;
739
+ shim_args.myStack = myStack;
740
+ shim_args.stackSize = stackSize;
741
+ shim_args.stackSizeHWM_ptr = &StackSizeCheck_stackSizeHWM;
742
+ shim_args.fn = tf;
743
+ shim_args.args = args;
744
+ ret = pthread_create(&threadId, &myAttr,
745
+ (thread_func)debug_stack_size_verbose_shim, (void *)&shim_args);
746
+ #else
747
+ ret = pthread_create(&threadId, &myAttr, tf, args);
748
+ #endif
749
+ if (ret != 0) {
750
+ printf("ret = %d\n", ret);
751
+ perror("pthread_create failed");
752
+ exit(EXIT_FAILURE);
753
+ }
754
+
755
+ ret = pthread_join(threadId, &status);
756
+ if (ret != 0) {
757
+ wc_mem_printf("pthread_join failed\n");
758
+ return ret;
759
+ }
760
+
761
+ for (i = 0; i < stackSize; i++) {
762
+ if (myStack[i] != STACK_CHECK_VAL) {
763
+ break;
764
+ }
765
+ }
766
+
767
+ free(myStack); /* native heap */
768
+ #ifdef HAVE_STACK_SIZE_VERBOSE
769
+ printf("stack used = %lu\n", StackSizeCheck_stackSizeHWM > (stackSize - i)
770
+ ? (unsigned long)StackSizeCheck_stackSizeHWM
771
+ : (unsigned long)(stackSize - i));
772
+ StackSizeCheck_myStack = NULL;
773
+ StackSizeCheck_stackOffsetPointer = NULL;
774
+ #else
775
+ {
776
+ size_t used = stackSize - i;
777
+ printf("stack used = %lu\n", (unsigned long)used);
778
+ }
779
+ #endif
780
+
781
+ return (int)((size_t)status);
782
+ }
783
+
784
+ static WC_INLINE int StackSizeCheck_launch(struct func_args* args,
785
+ thread_func tf, THREAD_TYPE *threadId, void **stack_context)
786
+ {
787
+ int ret;
788
+ unsigned char* myStack = NULL;
789
+ size_t stackSize = 1024*1024*2;
790
+ pthread_attr_t myAttr;
791
+ struct stack_size_debug_context* shim_args;
792
+
793
+ #ifdef PTHREAD_STACK_MIN
794
+ if (stackSize < (size_t)PTHREAD_STACK_MIN)
795
+ stackSize = PTHREAD_STACK_MIN;
796
+ #endif
797
+
798
+ shim_args = (struct stack_size_debug_context *)malloc(sizeof *shim_args); /* native heap */
799
+ if (shim_args == NULL) {
800
+ perror("malloc");
801
+ return -1;
802
+ }
803
+
804
+ ret = posix_memalign((void**)&myStack, sysconf(_SC_PAGESIZE), stackSize); /* native heap */
805
+ if (ret != 0 || myStack == NULL) {
806
+ wc_mem_printf("posix_memalign failed\n");
807
+ free(shim_args); /* native heap */
808
+ return -1;
809
+ }
810
+
811
+ XMEMSET(myStack, STACK_CHECK_VAL, stackSize);
812
+
813
+ ret = pthread_attr_init(&myAttr);
814
+ if (ret != 0) {
815
+ wc_mem_printf("attr_init failed\n");
816
+ free(shim_args); /* native heap */
817
+ free(myStack); /* native heap */
818
+ return ret;
819
+ }
820
+
821
+ ret = pthread_attr_setstack(&myAttr, myStack, stackSize);
822
+ if (ret != 0) {
823
+ wc_mem_printf("attr_setstackaddr failed\n");
824
+ }
825
+
826
+ shim_args->myStack = myStack;
827
+ shim_args->stackSize = stackSize;
828
+ #ifdef HAVE_STACK_SIZE_VERBOSE
829
+ shim_args->stackSizeHWM_ptr = &StackSizeCheck_stackSizeHWM;
830
+ shim_args->fn = tf;
831
+ shim_args->args = args;
832
+ ret = pthread_create((pthread_t *)threadId, &myAttr,
833
+ (thread_func)debug_stack_size_verbose_shim, (void *)shim_args);
834
+ #else
835
+ ret = pthread_create((pthread_t *)threadId, &myAttr, tf, args);
836
+ #endif
837
+ if (ret != 0) {
838
+ fprintf(stderr,"pthread_create failed: %s",strerror(ret));
839
+ exit(EXIT_FAILURE);
840
+ }
841
+
842
+ *stack_context = (void *)shim_args;
843
+
844
+ return 0;
845
+ }
846
+
847
+ static WC_INLINE int StackSizeCheck_reap(THREAD_TYPE threadId,
848
+ void *stack_context)
849
+ {
850
+ struct stack_size_debug_context *shim_args =
851
+ (struct stack_size_debug_context *)stack_context;
852
+ size_t i;
853
+ void *status;
854
+ int ret = pthread_join((pthread_t)threadId, &status);
855
+ if (ret != 0) {
856
+ wc_mem_printf("pthread_join failed\n");
857
+ return ret;
858
+ }
859
+
860
+ for (i = 0; i < shim_args->stackSize; i++) {
861
+ if (shim_args->myStack[i] != STACK_CHECK_VAL) {
862
+ break;
863
+ }
864
+ }
865
+
866
+ free(shim_args->myStack); /* native heap */
867
+ #ifdef HAVE_STACK_SIZE_VERBOSE
868
+ printf("stack used = %lu\n",
869
+ *shim_args->stackSizeHWM_ptr > (shim_args->stackSize - i)
870
+ ? (unsigned long)*shim_args->stackSizeHWM_ptr
871
+ : (unsigned long)(shim_args->stackSize - i));
872
+ #else
873
+ {
874
+ size_t used = shim_args->stackSize - i;
875
+ printf("stack used = %lu\n", (unsigned long)used);
876
+ }
877
+ #endif
878
+ free(shim_args); /* native heap */
879
+
880
+ return (int)((size_t)status);
881
+ }
882
+
883
+ #else /* HAVE_PTHREAD */
884
+
885
+ static WC_INLINE int StackSizeCheck(struct func_args* args, thread_func tf)
886
+ {
887
+ void* status;
888
+
889
+ if (tf == NULL)
890
+ return -BAD_FUNC_ARG;
891
+
892
+ status = tf(args);
893
+
894
+ #ifdef HAVE_STACK_SIZE_VERBOSE
895
+ {
896
+ ssize_t used = StackSizeHWM();
897
+ if (used >= 0) {
898
+ printf("stack used = %ld\n", (long)used);
899
+ StackSizeHWMReset();
900
+ }
901
+ }
902
+ #endif
903
+
904
+ return (int)((size_t)status);
905
+ }
906
+
907
+ #define StackSizeCheck_launch(args, tf, threadId, stack_context) \
908
+ ((void)(args), (void)(tf), (void)(threadId), (void)(stack_context), \
909
+ (NOT_COMPILED_IN))
910
+
911
+ #define StackSizeCheck_reap(threadId, stack_context) \
912
+ ((void)(threadId), (void)(stack_context), (NOT_COMPILED_IN))
913
+
914
+ #endif /* HAVE_PTHREAD */
915
+
916
+ #endif /* HAVE_STACK_SIZE */
917
+
918
+
919
+ #ifdef STACK_TRAP
920
+
921
+ /* good settings
922
+ ./configure --enable-debug --disable-shared C_EXTRA_FLAGS="-DUSER_TIME \
923
+ -DTFM_TIMING_RESISTANT -DPOSITIVE_EXP_ONLY -DSTACK_TRAP"
924
+
925
+ */
926
+
927
+ #ifdef HAVE_STACK_SIZE
928
+ /* client only for now, setrlimit will fail if pthread_create() called */
929
+ /* STACK_SIZE does pthread_create() on client */
930
+ #error "can't use STACK_TRAP with STACK_SIZE, setrlimit will fail"
931
+ #endif /* HAVE_STACK_SIZE */
932
+
933
+ static WC_INLINE void StackTrap(void)
934
+ {
935
+ struct rlimit rl;
936
+ if (getrlimit(RLIMIT_STACK, &rl) != 0) {
937
+ wc_mem_printf("getrlimit failed\n");
938
+ }
939
+ printf("rlim_cur = %llu\n", rl.rlim_cur);
940
+ rl.rlim_cur = 1024*21; /* adjust trap size here */
941
+ if (setrlimit(RLIMIT_STACK, &rl) != 0) {
942
+ wc_mem_printf("setrlimit failed\n");
943
+ }
944
+ }
945
+
946
+ #else /* STACK_TRAP */
947
+
948
+ static WC_INLINE void StackTrap(void)
949
+ {
950
+ }
951
+
952
+ #endif /* STACK_TRAP */
953
+
954
+ /* Stubs when not used */
955
+ #ifndef STACK_SIZE_CHECKPOINT
956
+ #define STACK_SIZE_CHECKPOINT(...) (__VA_ARGS__)
957
+ #endif
958
+ #ifndef STACK_SIZE_CHECKPOINT_MSG
959
+ #define STACK_SIZE_CHECKPOINT_MSG(msg) WC_DO_NOTHING
960
+ #endif
961
+ #ifndef STACK_SIZE_CHECKPOINT_WITH_MAX_CHECK
962
+ #define STACK_SIZE_CHECKPOINT_WITH_MAX_CHECK(max, ...) (__VA_ARGS__, 0)
963
+ #endif
964
+ #ifndef STACK_SIZE_INIT
965
+ #define STACK_SIZE_INIT() WC_DO_NOTHING
966
+ #endif
967
+
968
+ #endif /* WOLFSSL_MEM_TRACK_H */