@voipsdk/react-native-voipcloud 1.0.1 → 1.0.2

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 (644) hide show
  1. package/CHANGELOG.md +13 -0
  2. package/README.md +55 -9
  3. package/android/build.gradle +14 -8
  4. package/ios/VoipCloud.mm +214 -28
  5. package/ios/VoipCloud.xcframework/Info.plist +48 -0
  6. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/activesock.h +598 -0
  7. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/addr_resolv.h +189 -0
  8. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/array.h +95 -0
  9. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/assert.h +84 -0
  10. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/assert.h +36 -0
  11. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/cc_armcc.h +57 -0
  12. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/cc_clang.h +64 -0
  13. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/cc_codew.h +55 -0
  14. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/cc_gcc.h +79 -0
  15. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/cc_gcce.h +54 -0
  16. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/cc_msvc.h +87 -0
  17. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/cc_mwcc.h +55 -0
  18. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/ctype.h +44 -0
  19. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/errno.h +44 -0
  20. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/high_precision.h +87 -0
  21. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/limits.h +66 -0
  22. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/m_alpha.h +35 -0
  23. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/m_armv4.h +38 -0
  24. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/m_auto.h +60 -0
  25. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/m_auto.h.in +59 -0
  26. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/m_i386.h +34 -0
  27. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/m_m68k.h +34 -0
  28. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/m_powerpc.h +35 -0
  29. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/m_sparc.h +34 -0
  30. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/m_x86_64.h +35 -0
  31. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/malloc.h +33 -0
  32. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/os_auto.h +245 -0
  33. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/os_auto.h.in +244 -0
  34. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/os_darwinos.h +141 -0
  35. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/os_linux.h +130 -0
  36. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/os_palmos.h +118 -0
  37. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/os_rtems.h +138 -0
  38. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/os_sunos.h +131 -0
  39. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/os_symbian.h +166 -0
  40. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/os_win32.h +148 -0
  41. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/os_win32_wince.h +145 -0
  42. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/os_winphone8.h +149 -0
  43. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/os_winuwp.h +149 -0
  44. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/rand.h +55 -0
  45. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/setjmp.h +49 -0
  46. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/size_t.h +31 -0
  47. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/socket.h +223 -0
  48. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/stdarg.h +31 -0
  49. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/stdfileio.h +31 -0
  50. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/string.h +178 -0
  51. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/time.h +41 -0
  52. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/config.h +1537 -0
  53. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/config_site.h +22 -0
  54. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/config_site_sample.h +485 -0
  55. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/config_site_test.h +11 -0
  56. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/ctype.h +174 -0
  57. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/doxygen.h +995 -0
  58. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/errno.h +593 -0
  59. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/except.h +420 -0
  60. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/fifobuf.h +43 -0
  61. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/file_access.h +108 -0
  62. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/file_io.h +183 -0
  63. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/guid.h +119 -0
  64. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/hash.h +253 -0
  65. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/ioqueue.h +955 -0
  66. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/ip_helper.h +152 -0
  67. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/limits.h +57 -0
  68. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/list.h +268 -0
  69. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/list_i.h +120 -0
  70. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/lock.h +453 -0
  71. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/log.h +487 -0
  72. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/math.h +203 -0
  73. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/os.h +1536 -0
  74. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/pool.h +918 -0
  75. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/pool_alt.h +212 -0
  76. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/pool_buf.h +104 -0
  77. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/pool_i.h +131 -0
  78. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/rand.h +65 -0
  79. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/rbtree.h +215 -0
  80. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/sock.h +1566 -0
  81. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/sock_qos.h +429 -0
  82. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/sock_select.h +151 -0
  83. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/ssl_sock.h +1508 -0
  84. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/string.h +963 -0
  85. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/string_i.h +406 -0
  86. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/timer.h +386 -0
  87. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/types.h +594 -0
  88. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/unicode.h +140 -0
  89. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj++/file.hpp +187 -0
  90. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj++/hash.hpp +155 -0
  91. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj++/list.hpp +351 -0
  92. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj++/lock.hpp +148 -0
  93. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj++/os.hpp +869 -0
  94. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj++/pool.hpp +278 -0
  95. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj++/proactor.hpp +514 -0
  96. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj++/scanner.hpp +245 -0
  97. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj++/sock.hpp +443 -0
  98. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj++/string.hpp +467 -0
  99. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj++/timer.hpp +197 -0
  100. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj++/tree.hpp +128 -0
  101. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj++/types.hpp +174 -0
  102. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjlib++.hpp +34 -0
  103. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjlib-util/base64.h +91 -0
  104. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjlib-util/cli.h +530 -0
  105. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjlib-util/cli_console.h +116 -0
  106. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjlib-util/cli_imp.h +207 -0
  107. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjlib-util/cli_telnet.h +167 -0
  108. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjlib-util/config.h +373 -0
  109. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjlib-util/crc32.h +95 -0
  110. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjlib-util/dns.h +460 -0
  111. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjlib-util/dns_server.h +116 -0
  112. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjlib-util/errno.h +455 -0
  113. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjlib-util/getopt.h +144 -0
  114. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjlib-util/hmac_md5.h +108 -0
  115. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjlib-util/hmac_sha1.h +106 -0
  116. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjlib-util/http_client.h +493 -0
  117. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjlib-util/json.h +227 -0
  118. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjlib-util/md5.h +73 -0
  119. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjlib-util/pcap.h +195 -0
  120. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjlib-util/resolver.h +515 -0
  121. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjlib-util/scanner.h +553 -0
  122. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjlib-util/scanner_cis_bitwise.h +96 -0
  123. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjlib-util/scanner_cis_uint.h +83 -0
  124. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjlib-util/sha1.h +79 -0
  125. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjlib-util/srv_resolver.h +221 -0
  126. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjlib-util/string.h +101 -0
  127. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjlib-util/stun_simple.h +288 -0
  128. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjlib-util/types.h +94 -0
  129. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjlib-util/xml.h +248 -0
  130. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjlib-util.h +75 -0
  131. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjlib.h +62 -0
  132. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/alaw_ulaw.h +212 -0
  133. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/audiodev.h +761 -0
  134. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/avi.h +201 -0
  135. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/avi_stream.h +195 -0
  136. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/bidirectional.h +66 -0
  137. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/circbuf.h +436 -0
  138. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/clock.h +338 -0
  139. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/codec.h +1192 -0
  140. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/conference.h +599 -0
  141. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/config.h +1713 -0
  142. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/config_auto.h +43 -0
  143. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/config_auto.h.in +42 -0
  144. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/converter.h +386 -0
  145. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/delaybuf.h +175 -0
  146. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/doxygen.h +243 -0
  147. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/echo.h +420 -0
  148. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/echo_port.h +73 -0
  149. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/endpoint.h +389 -0
  150. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/errno.h +693 -0
  151. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/event.h +493 -0
  152. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/format.h +821 -0
  153. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/frame.h +331 -0
  154. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/g711.h +88 -0
  155. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/jbuf.h +484 -0
  156. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/master_port.h +198 -0
  157. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/mem_port.h +241 -0
  158. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/null_port.h +69 -0
  159. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/plc.h +114 -0
  160. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/port.h +565 -0
  161. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/resample.h +199 -0
  162. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/rtcp.h +511 -0
  163. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/rtcp_fb.h +487 -0
  164. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/rtcp_xr.h +477 -0
  165. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/rtp.h +457 -0
  166. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/sdp.h +830 -0
  167. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/sdp_neg.h +822 -0
  168. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/session.h +435 -0
  169. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/signatures.h +217 -0
  170. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/silencedet.h +199 -0
  171. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/sound.h +353 -0
  172. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/sound_port.h +397 -0
  173. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/splitcomb.h +142 -0
  174. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/stereo.h +203 -0
  175. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/stream.h +541 -0
  176. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/stream_common.h +123 -0
  177. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/symbian_sound_aps.h +47 -0
  178. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/tonegen.h +302 -0
  179. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/transport.h +1069 -0
  180. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/transport_adapter_sample.h +75 -0
  181. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/transport_ice.h +458 -0
  182. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/transport_loop.h +158 -0
  183. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/transport_srtp.h +579 -0
  184. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/transport_udp.h +161 -0
  185. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/types.h +345 -0
  186. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/vid_codec.h +896 -0
  187. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/vid_codec_util.h +194 -0
  188. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/vid_conf.h +310 -0
  189. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/vid_port.h +269 -0
  190. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/vid_stream.h +514 -0
  191. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/vid_tee.h +141 -0
  192. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/videodev.h +859 -0
  193. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/wav_playlist.h +131 -0
  194. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/wav_port.h +342 -0
  195. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/wave.h +183 -0
  196. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/wsola.h +218 -0
  197. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-audiodev/audiodev.h +110 -0
  198. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-audiodev/audiodev_imp.h +187 -0
  199. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-audiodev/audiotest.h +115 -0
  200. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-audiodev/config.h +525 -0
  201. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-audiodev/errno.h +227 -0
  202. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-codec/amr_helper.h +1236 -0
  203. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-codec/amr_sdp_match.h +60 -0
  204. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-codec/and_aud_mediacodec.h +131 -0
  205. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-codec/and_vid_mediacodec.h +77 -0
  206. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-codec/audio_codecs.h +97 -0
  207. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-codec/bcg729.h +120 -0
  208. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-codec/config.h +720 -0
  209. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-codec/config_auto.h +104 -0
  210. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-codec/config_auto.h.in +103 -0
  211. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-codec/ffmpeg_vid_codecs.h +66 -0
  212. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-codec/g722.h +103 -0
  213. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-codec/g7221.h +164 -0
  214. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-codec/g7221_sdp_match.h +58 -0
  215. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-codec/gsm.h +86 -0
  216. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-codec/h263_packetizer.h +145 -0
  217. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-codec/h264_packetizer.h +163 -0
  218. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-codec/ilbc.h +118 -0
  219. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-codec/ipp_codecs.h +321 -0
  220. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-codec/l16.h +83 -0
  221. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-codec/opencore_amr.h +145 -0
  222. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-codec/openh264.h +68 -0
  223. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-codec/opus.h +160 -0
  224. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-codec/passthrough.h +276 -0
  225. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-codec/silk.h +126 -0
  226. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-codec/speex.h +149 -0
  227. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-codec/types.h +145 -0
  228. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-codec/vid_toolbox.h +70 -0
  229. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-codec/vpx.h +68 -0
  230. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-codec/vpx_packetizer.h +123 -0
  231. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-codec.h +47 -0
  232. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-videodev/avi_dev.h +139 -0
  233. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-videodev/config.h +326 -0
  234. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-videodev/errno.h +158 -0
  235. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-videodev/opengl_dev.h +52 -0
  236. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-videodev/videodev.h +119 -0
  237. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-videodev/videodev_imp.h +229 -0
  238. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia.h +81 -0
  239. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia_audiodev.h +32 -0
  240. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia_videodev.h +30 -0
  241. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjnath/config.h +596 -0
  242. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjnath/errno.h +225 -0
  243. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjnath/ice_session.h +1122 -0
  244. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjnath/ice_strans.h +1112 -0
  245. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjnath/nat_detect.h +233 -0
  246. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjnath/stun_auth.h +456 -0
  247. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjnath/stun_config.h +135 -0
  248. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjnath/stun_msg.h +1856 -0
  249. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjnath/stun_session.h +763 -0
  250. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjnath/stun_sock.h +496 -0
  251. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjnath/stun_transaction.h +291 -0
  252. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjnath/turn_session.h +968 -0
  253. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjnath/turn_sock.h +673 -0
  254. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjnath/types.h +75 -0
  255. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjnath/upnp.h +147 -0
  256. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjnath.h +46 -0
  257. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip/print_util.h +166 -0
  258. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip/sip_auth.h +637 -0
  259. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip/sip_auth_aka.h +212 -0
  260. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip/sip_auth_msg.h +269 -0
  261. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip/sip_auth_parser.h +74 -0
  262. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip/sip_autoconf.h +39 -0
  263. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip/sip_autoconf.h.in +38 -0
  264. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip/sip_config.h +1545 -0
  265. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip/sip_dialog.h +935 -0
  266. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip/sip_endpoint.h +715 -0
  267. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip/sip_errno.h +544 -0
  268. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip/sip_event.h +230 -0
  269. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip/sip_module.h +221 -0
  270. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip/sip_msg.h +2134 -0
  271. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip/sip_multipart.h +276 -0
  272. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip/sip_parser.h +465 -0
  273. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip/sip_private.h +31 -0
  274. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip/sip_resolve.h +347 -0
  275. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip/sip_tel_uri.h +83 -0
  276. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip/sip_transaction.h +542 -0
  277. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip/sip_transport.h +1672 -0
  278. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip/sip_transport_loop.h +146 -0
  279. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip/sip_transport_tcp.h +300 -0
  280. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip/sip_transport_tls.h +642 -0
  281. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip/sip_transport_udp.h +389 -0
  282. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip/sip_types.h +265 -0
  283. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip/sip_ua_layer.h +159 -0
  284. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip/sip_uri.h +470 -0
  285. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip/sip_util.h +888 -0
  286. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip-simple/errno.h +117 -0
  287. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip-simple/evsub.h +561 -0
  288. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip-simple/evsub_msg.h +119 -0
  289. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip-simple/iscomposing.h +137 -0
  290. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip-simple/mwi.h +211 -0
  291. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip-simple/pidf.h +177 -0
  292. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip-simple/presence.h +416 -0
  293. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip-simple/publish.h +350 -0
  294. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip-simple/rpid.h +150 -0
  295. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip-simple/types.h +30 -0
  296. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip-simple/xpidf.h +137 -0
  297. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip-ua/sip_100rel.h +244 -0
  298. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip-ua/sip_inv.h +1224 -0
  299. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip-ua/sip_regc.h +497 -0
  300. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip-ua/sip_replaces.h +303 -0
  301. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip-ua/sip_timer.h +274 -0
  302. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip-ua/sip_xfer.h +207 -0
  303. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip.h +61 -0
  304. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip_auth.h +37 -0
  305. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip_simple.h +45 -0
  306. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip_ua.h +31 -0
  307. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsua-lib/pjsua.h +8899 -0
  308. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsua-lib/pjsua_internal.h +989 -0
  309. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsua.h +1 -0
  310. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsua2/account.hpp +2123 -0
  311. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsua2/call.hpp +2253 -0
  312. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsua2/config.hpp +72 -0
  313. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsua2/doxygen.hpp +48 -0
  314. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsua2/endpoint.hpp +2160 -0
  315. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsua2/json.hpp +115 -0
  316. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsua2/media.hpp +2748 -0
  317. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsua2/persistent.hpp +715 -0
  318. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsua2/presence.hpp +368 -0
  319. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsua2/siptypes.hpp +1013 -0
  320. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsua2/types.hpp +283 -0
  321. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsua2.hpp +28 -0
  322. package/ios/VoipCloud.xcframework/ios-arm64/libVoipCloud.a +0 -0
  323. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/activesock.h +598 -0
  324. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/addr_resolv.h +189 -0
  325. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/array.h +95 -0
  326. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/assert.h +84 -0
  327. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/assert.h +36 -0
  328. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/cc_armcc.h +57 -0
  329. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/cc_clang.h +64 -0
  330. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/cc_codew.h +55 -0
  331. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/cc_gcc.h +79 -0
  332. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/cc_gcce.h +54 -0
  333. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/cc_msvc.h +87 -0
  334. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/cc_mwcc.h +55 -0
  335. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/ctype.h +44 -0
  336. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/errno.h +44 -0
  337. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/high_precision.h +87 -0
  338. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/limits.h +66 -0
  339. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/m_alpha.h +35 -0
  340. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/m_armv4.h +38 -0
  341. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/m_auto.h +60 -0
  342. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/m_auto.h.in +59 -0
  343. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/m_i386.h +34 -0
  344. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/m_m68k.h +34 -0
  345. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/m_powerpc.h +35 -0
  346. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/m_sparc.h +34 -0
  347. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/m_x86_64.h +35 -0
  348. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/malloc.h +33 -0
  349. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/os_auto.h +245 -0
  350. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/os_auto.h.in +244 -0
  351. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/os_darwinos.h +141 -0
  352. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/os_linux.h +130 -0
  353. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/os_palmos.h +118 -0
  354. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/os_rtems.h +138 -0
  355. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/os_sunos.h +131 -0
  356. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/os_symbian.h +166 -0
  357. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/os_win32.h +148 -0
  358. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/os_win32_wince.h +145 -0
  359. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/os_winphone8.h +149 -0
  360. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/os_winuwp.h +149 -0
  361. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/rand.h +55 -0
  362. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/setjmp.h +49 -0
  363. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/size_t.h +31 -0
  364. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/socket.h +223 -0
  365. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/stdarg.h +31 -0
  366. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/stdfileio.h +31 -0
  367. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/string.h +178 -0
  368. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/time.h +41 -0
  369. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/config.h +1537 -0
  370. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/config_site.h +22 -0
  371. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/config_site_sample.h +485 -0
  372. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/config_site_test.h +11 -0
  373. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/ctype.h +174 -0
  374. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/doxygen.h +995 -0
  375. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/errno.h +593 -0
  376. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/except.h +420 -0
  377. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/fifobuf.h +43 -0
  378. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/file_access.h +108 -0
  379. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/file_io.h +183 -0
  380. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/guid.h +119 -0
  381. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/hash.h +253 -0
  382. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/ioqueue.h +955 -0
  383. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/ip_helper.h +152 -0
  384. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/limits.h +57 -0
  385. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/list.h +268 -0
  386. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/list_i.h +120 -0
  387. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/lock.h +453 -0
  388. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/log.h +487 -0
  389. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/math.h +203 -0
  390. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/os.h +1536 -0
  391. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/pool.h +918 -0
  392. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/pool_alt.h +212 -0
  393. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/pool_buf.h +104 -0
  394. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/pool_i.h +131 -0
  395. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/rand.h +65 -0
  396. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/rbtree.h +215 -0
  397. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/sock.h +1566 -0
  398. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/sock_qos.h +429 -0
  399. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/sock_select.h +151 -0
  400. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/ssl_sock.h +1508 -0
  401. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/string.h +963 -0
  402. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/string_i.h +406 -0
  403. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/timer.h +386 -0
  404. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/types.h +594 -0
  405. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/unicode.h +140 -0
  406. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj++/file.hpp +187 -0
  407. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj++/hash.hpp +155 -0
  408. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj++/list.hpp +351 -0
  409. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj++/lock.hpp +148 -0
  410. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj++/os.hpp +869 -0
  411. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj++/pool.hpp +278 -0
  412. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj++/proactor.hpp +514 -0
  413. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj++/scanner.hpp +245 -0
  414. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj++/sock.hpp +443 -0
  415. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj++/string.hpp +467 -0
  416. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj++/timer.hpp +197 -0
  417. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj++/tree.hpp +128 -0
  418. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj++/types.hpp +174 -0
  419. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjlib++.hpp +34 -0
  420. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjlib-util/base64.h +91 -0
  421. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjlib-util/cli.h +530 -0
  422. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjlib-util/cli_console.h +116 -0
  423. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjlib-util/cli_imp.h +207 -0
  424. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjlib-util/cli_telnet.h +167 -0
  425. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjlib-util/config.h +373 -0
  426. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjlib-util/crc32.h +95 -0
  427. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjlib-util/dns.h +460 -0
  428. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjlib-util/dns_server.h +116 -0
  429. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjlib-util/errno.h +455 -0
  430. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjlib-util/getopt.h +144 -0
  431. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjlib-util/hmac_md5.h +108 -0
  432. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjlib-util/hmac_sha1.h +106 -0
  433. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjlib-util/http_client.h +493 -0
  434. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjlib-util/json.h +227 -0
  435. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjlib-util/md5.h +73 -0
  436. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjlib-util/pcap.h +195 -0
  437. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjlib-util/resolver.h +515 -0
  438. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjlib-util/scanner.h +553 -0
  439. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjlib-util/scanner_cis_bitwise.h +96 -0
  440. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjlib-util/scanner_cis_uint.h +83 -0
  441. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjlib-util/sha1.h +79 -0
  442. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjlib-util/srv_resolver.h +221 -0
  443. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjlib-util/string.h +101 -0
  444. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjlib-util/stun_simple.h +288 -0
  445. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjlib-util/types.h +94 -0
  446. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjlib-util/xml.h +248 -0
  447. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjlib-util.h +75 -0
  448. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjlib.h +62 -0
  449. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/alaw_ulaw.h +212 -0
  450. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/audiodev.h +761 -0
  451. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/avi.h +201 -0
  452. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/avi_stream.h +195 -0
  453. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/bidirectional.h +66 -0
  454. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/circbuf.h +436 -0
  455. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/clock.h +338 -0
  456. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/codec.h +1192 -0
  457. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/conference.h +599 -0
  458. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/config.h +1713 -0
  459. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/config_auto.h +43 -0
  460. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/config_auto.h.in +42 -0
  461. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/converter.h +386 -0
  462. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/delaybuf.h +175 -0
  463. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/doxygen.h +243 -0
  464. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/echo.h +420 -0
  465. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/echo_port.h +73 -0
  466. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/endpoint.h +389 -0
  467. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/errno.h +693 -0
  468. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/event.h +493 -0
  469. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/format.h +821 -0
  470. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/frame.h +331 -0
  471. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/g711.h +88 -0
  472. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/jbuf.h +484 -0
  473. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/master_port.h +198 -0
  474. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/mem_port.h +241 -0
  475. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/null_port.h +69 -0
  476. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/plc.h +114 -0
  477. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/port.h +565 -0
  478. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/resample.h +199 -0
  479. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/rtcp.h +511 -0
  480. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/rtcp_fb.h +487 -0
  481. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/rtcp_xr.h +477 -0
  482. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/rtp.h +457 -0
  483. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/sdp.h +830 -0
  484. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/sdp_neg.h +822 -0
  485. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/session.h +435 -0
  486. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/signatures.h +217 -0
  487. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/silencedet.h +199 -0
  488. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/sound.h +353 -0
  489. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/sound_port.h +397 -0
  490. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/splitcomb.h +142 -0
  491. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/stereo.h +203 -0
  492. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/stream.h +541 -0
  493. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/stream_common.h +123 -0
  494. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/symbian_sound_aps.h +47 -0
  495. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/tonegen.h +302 -0
  496. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/transport.h +1069 -0
  497. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/transport_adapter_sample.h +75 -0
  498. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/transport_ice.h +458 -0
  499. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/transport_loop.h +158 -0
  500. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/transport_srtp.h +579 -0
  501. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/transport_udp.h +161 -0
  502. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/types.h +345 -0
  503. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/vid_codec.h +896 -0
  504. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/vid_codec_util.h +194 -0
  505. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/vid_conf.h +310 -0
  506. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/vid_port.h +269 -0
  507. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/vid_stream.h +514 -0
  508. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/vid_tee.h +141 -0
  509. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/videodev.h +859 -0
  510. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/wav_playlist.h +131 -0
  511. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/wav_port.h +342 -0
  512. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/wave.h +183 -0
  513. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/wsola.h +218 -0
  514. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-audiodev/audiodev.h +110 -0
  515. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-audiodev/audiodev_imp.h +187 -0
  516. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-audiodev/audiotest.h +115 -0
  517. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-audiodev/config.h +525 -0
  518. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-audiodev/errno.h +227 -0
  519. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-codec/amr_helper.h +1236 -0
  520. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-codec/amr_sdp_match.h +60 -0
  521. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-codec/and_aud_mediacodec.h +131 -0
  522. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-codec/and_vid_mediacodec.h +77 -0
  523. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-codec/audio_codecs.h +97 -0
  524. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-codec/bcg729.h +120 -0
  525. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-codec/config.h +720 -0
  526. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-codec/config_auto.h +104 -0
  527. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-codec/config_auto.h.in +103 -0
  528. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-codec/ffmpeg_vid_codecs.h +66 -0
  529. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-codec/g722.h +103 -0
  530. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-codec/g7221.h +164 -0
  531. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-codec/g7221_sdp_match.h +58 -0
  532. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-codec/gsm.h +86 -0
  533. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-codec/h263_packetizer.h +145 -0
  534. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-codec/h264_packetizer.h +163 -0
  535. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-codec/ilbc.h +118 -0
  536. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-codec/ipp_codecs.h +321 -0
  537. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-codec/l16.h +83 -0
  538. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-codec/opencore_amr.h +145 -0
  539. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-codec/openh264.h +68 -0
  540. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-codec/opus.h +160 -0
  541. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-codec/passthrough.h +276 -0
  542. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-codec/silk.h +126 -0
  543. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-codec/speex.h +149 -0
  544. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-codec/types.h +145 -0
  545. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-codec/vid_toolbox.h +70 -0
  546. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-codec/vpx.h +68 -0
  547. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-codec/vpx_packetizer.h +123 -0
  548. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-codec.h +47 -0
  549. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-videodev/avi_dev.h +139 -0
  550. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-videodev/config.h +326 -0
  551. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-videodev/errno.h +158 -0
  552. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-videodev/opengl_dev.h +52 -0
  553. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-videodev/videodev.h +119 -0
  554. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-videodev/videodev_imp.h +229 -0
  555. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia.h +81 -0
  556. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia_audiodev.h +32 -0
  557. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia_videodev.h +30 -0
  558. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjnath/config.h +596 -0
  559. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjnath/errno.h +225 -0
  560. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjnath/ice_session.h +1122 -0
  561. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjnath/ice_strans.h +1112 -0
  562. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjnath/nat_detect.h +233 -0
  563. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjnath/stun_auth.h +456 -0
  564. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjnath/stun_config.h +135 -0
  565. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjnath/stun_msg.h +1856 -0
  566. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjnath/stun_session.h +763 -0
  567. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjnath/stun_sock.h +496 -0
  568. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjnath/stun_transaction.h +291 -0
  569. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjnath/turn_session.h +968 -0
  570. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjnath/turn_sock.h +673 -0
  571. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjnath/types.h +75 -0
  572. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjnath/upnp.h +147 -0
  573. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjnath.h +46 -0
  574. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip/print_util.h +166 -0
  575. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip/sip_auth.h +637 -0
  576. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip/sip_auth_aka.h +212 -0
  577. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip/sip_auth_msg.h +269 -0
  578. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip/sip_auth_parser.h +74 -0
  579. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip/sip_autoconf.h +39 -0
  580. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip/sip_autoconf.h.in +38 -0
  581. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip/sip_config.h +1545 -0
  582. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip/sip_dialog.h +935 -0
  583. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip/sip_endpoint.h +715 -0
  584. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip/sip_errno.h +544 -0
  585. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip/sip_event.h +230 -0
  586. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip/sip_module.h +221 -0
  587. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip/sip_msg.h +2134 -0
  588. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip/sip_multipart.h +276 -0
  589. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip/sip_parser.h +465 -0
  590. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip/sip_private.h +31 -0
  591. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip/sip_resolve.h +347 -0
  592. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip/sip_tel_uri.h +83 -0
  593. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip/sip_transaction.h +542 -0
  594. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip/sip_transport.h +1672 -0
  595. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip/sip_transport_loop.h +146 -0
  596. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip/sip_transport_tcp.h +300 -0
  597. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip/sip_transport_tls.h +642 -0
  598. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip/sip_transport_udp.h +389 -0
  599. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip/sip_types.h +265 -0
  600. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip/sip_ua_layer.h +159 -0
  601. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip/sip_uri.h +470 -0
  602. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip/sip_util.h +888 -0
  603. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip-simple/errno.h +117 -0
  604. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip-simple/evsub.h +561 -0
  605. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip-simple/evsub_msg.h +119 -0
  606. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip-simple/iscomposing.h +137 -0
  607. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip-simple/mwi.h +211 -0
  608. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip-simple/pidf.h +177 -0
  609. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip-simple/presence.h +416 -0
  610. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip-simple/publish.h +350 -0
  611. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip-simple/rpid.h +150 -0
  612. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip-simple/types.h +30 -0
  613. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip-simple/xpidf.h +137 -0
  614. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip-ua/sip_100rel.h +244 -0
  615. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip-ua/sip_inv.h +1224 -0
  616. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip-ua/sip_regc.h +497 -0
  617. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip-ua/sip_replaces.h +303 -0
  618. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip-ua/sip_timer.h +274 -0
  619. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip-ua/sip_xfer.h +207 -0
  620. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip.h +61 -0
  621. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip_auth.h +37 -0
  622. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip_simple.h +45 -0
  623. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip_ua.h +31 -0
  624. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsua-lib/pjsua.h +8899 -0
  625. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsua-lib/pjsua_internal.h +989 -0
  626. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsua.h +1 -0
  627. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsua2/account.hpp +2123 -0
  628. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsua2/call.hpp +2253 -0
  629. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsua2/config.hpp +72 -0
  630. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsua2/doxygen.hpp +48 -0
  631. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsua2/endpoint.hpp +2160 -0
  632. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsua2/json.hpp +115 -0
  633. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsua2/media.hpp +2748 -0
  634. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsua2/persistent.hpp +715 -0
  635. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsua2/presence.hpp +368 -0
  636. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsua2/siptypes.hpp +1013 -0
  637. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsua2/types.hpp +283 -0
  638. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsua2.hpp +28 -0
  639. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/libVoipCloud.a +0 -0
  640. package/ios/VoipCloudEngine.h +62 -0
  641. package/ios/VoipCloudEngine.mm +571 -0
  642. package/package.json +4 -3
  643. package/react-native-voipcloud.podspec +27 -1
  644. package/react-native.config.js +22 -0
@@ -0,0 +1,955 @@
1
+ /*
2
+ * Copyright (C) 2008-2011 Teluu Inc. (http://www.teluu.com)
3
+ * Copyright (C) 2003-2008 Benny Prijono <benny@prijono.org>
4
+ *
5
+ * This program is free software; you can redistribute it and/or modify
6
+ * it under the terms of the GNU General Public License as published by
7
+ * the Free Software Foundation; either version 2 of the License, or
8
+ * (at your option) any later version.
9
+ *
10
+ * This program is distributed in the hope that it will be useful,
11
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
12
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13
+ * GNU General Public License for more details.
14
+ *
15
+ * You should have received a copy of the GNU General Public License
16
+ * along with this program; if not, write to the Free Software
17
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
18
+ */
19
+ #ifndef __PJ_IOQUEUE_H__
20
+ #define __PJ_IOQUEUE_H__
21
+
22
+ /**
23
+ * @file ioqueue.h
24
+ * @brief I/O Dispatching Mechanism
25
+ */
26
+
27
+ #include <pj/types.h>
28
+
29
+ PJ_BEGIN_DECL
30
+
31
+ /**
32
+ * @defgroup PJ_IO Input/Output
33
+ * @brief Input/Output
34
+ * @ingroup PJ_OS
35
+ *
36
+ * This section contains API building blocks to perform network I/O and
37
+ * communications. If provides:
38
+ * - @ref PJ_SOCK
39
+ *\n
40
+ * A highly portable socket abstraction, runs on all kind of
41
+ * network APIs such as standard BSD socket, Windows socket, Linux
42
+ * \b kernel socket, PalmOS networking API, etc.
43
+ *
44
+ * - @ref pj_addr_resolve
45
+ *\n
46
+ * Portable address resolution, which implements #pj_gethostbyname().
47
+ *
48
+ * - @ref PJ_SOCK_SELECT
49
+ *\n
50
+ * A portable \a select() like API (#pj_sock_select()) which can be
51
+ * implemented with various back-ends.
52
+ *
53
+ * - @ref PJ_IOQUEUE
54
+ *\n
55
+ * Framework for dispatching network events.
56
+ *
57
+ * For more information see the modules below.
58
+ */
59
+
60
+ /**
61
+ * @defgroup PJ_IOQUEUE IOQueue: I/O Event Dispatching with Proactor Pattern
62
+ * @ingroup PJ_IO
63
+ * @{
64
+ *
65
+ * I/O Queue provides API for performing asynchronous I/O operations. It
66
+ * conforms to proactor pattern, which allows application to submit an
67
+ * asynchronous operation and to be notified later when the operation has
68
+ * completed.
69
+ *
70
+ * The I/O Queue can work on both socket and file descriptors. For
71
+ * asynchronous file operations however, one must make sure that the correct
72
+ * file I/O back-end is used, because not all file I/O back-end can be
73
+ * used with the ioqueue. Please see \ref PJ_FILE_IO for more details.
74
+ *
75
+ * The framework works natively in platforms where asynchronous operation API
76
+ * exists, such as in Windows NT with IoCompletionPort/IOCP. In other
77
+ * platforms, the I/O queue abstracts the operating system's event poll API
78
+ * to provide semantics similar to IoCompletionPort with minimal penalties
79
+ * (i.e. per ioqueue and per handle mutex protection).
80
+ *
81
+ * The I/O queue provides more than just unified abstraction. It also:
82
+ * - makes sure that the operation uses the most effective way to utilize
83
+ * the underlying mechanism, to achieve the maximum theoritical
84
+ * throughput possible on a given platform.
85
+ * - choose the most efficient mechanism for event polling on a given
86
+ * platform.
87
+ *
88
+ * Currently, the I/O Queue is implemented using:
89
+ * - <tt><b>select()</b></tt>, as the common denominator, but the least
90
+ * efficient. Also the number of descriptor is limited to
91
+ * \c PJ_IOQUEUE_MAX_HANDLES (which by default is 64).
92
+ * - <tt><b>/dev/epoll</b></tt> on Linux (user mode and kernel mode),
93
+ * a much faster replacement for select() on Linux (and more importantly
94
+ * doesn't have limitation on number of descriptors).
95
+ * - <b>I/O Completion ports</b> on Windows NT/2000/XP, which is the most
96
+ * efficient way to dispatch events in Windows NT based OSes, and most
97
+ * importantly, it doesn't have the limit on how many handles to monitor.
98
+ * And it works with files (not only sockets) as well.
99
+ *
100
+ *
101
+ * \section pj_ioqueue_concurrency_sec Concurrency Rules
102
+ *
103
+ * The ioqueue has been fine tuned to allow multiple threads to poll the
104
+ * handles simultaneously, to maximize scalability when the application is
105
+ * running on multiprocessor systems. When more than one threads are polling
106
+ * the ioqueue and there are more than one handles are signaled, more than
107
+ * one threads will execute the callback simultaneously to serve the events.
108
+ * These parallel executions are completely safe when the events happen for
109
+ * two different handles.
110
+ *
111
+ * However, with multithreading, care must be taken when multiple events
112
+ * happen on the same handle, or when event is happening on a handle (and
113
+ * the callback is being executed) and application is performing
114
+ * unregistration to the handle at the same time.
115
+ *
116
+ * The treatments of above scenario differ according to the concurrency
117
+ * setting that are applied to the handle.
118
+ *
119
+ * \subsection pj_ioq_concur_set Concurrency Settings for Handles
120
+ *
121
+ * Concurrency can be set on per handle (key) basis, by using
122
+ * #pj_ioqueue_set_concurrency() function. The default key concurrency value
123
+ * for the handle is inherited from the key concurrency setting of the ioqueue,
124
+ * and the key concurrency setting for the ioqueue can be changed by using
125
+ * #pj_ioqueue_set_default_concurrency(). The default key concurrency setting
126
+ * for ioqueue itself is controlled by compile time setting
127
+ * PJ_IOQUEUE_DEFAULT_ALLOW_CONCURRENCY.
128
+ *
129
+ * Note that this key concurrency setting only controls whether multiple
130
+ * threads are allowed to operate <b>on the same key</b> at the same time.
131
+ * The ioqueue itself always allows multiple threads to enter the ioqeuue at
132
+ * the same time, and also simultaneous callback calls to <b>differrent
133
+ * keys</b> is always allowed regardless to the key concurrency setting.
134
+ *
135
+ * \subsection pj_ioq_parallel Parallel Callback Executions for the Same Handle
136
+ *
137
+ * Note that when key concurrency is enabled (i.e. parallel callback calls on
138
+ * the same key is allowed; this is the default setting), the ioqueue will only
139
+ * perform simultaneous callback executions on the same key when the key has
140
+ * invoked multiple pending operations. This could be done for example by
141
+ * calling #pj_ioqueue_recvfrom() more than once on the same key, each with
142
+ * the same key but different operation key (pj_ioqueue_op_key_t). With this
143
+ * scenario, when multiple packets arrive on the key at the same time, more
144
+ * than one threads may execute the callback simultaneously, each with the
145
+ * same key but different operation key.
146
+ *
147
+ * When there is only one pending operation on the key (e.g. there is only one
148
+ * #pj_ioqueue_recvfrom() invoked on the key), then events occuring to the
149
+ * same key will be queued by the ioqueue, thus no simultaneous callback calls
150
+ * will be performed.
151
+ *
152
+ * \subsection pj_ioq_allow_concur Concurrency is Enabled (Default Value)
153
+ *
154
+ * The default setting for the ioqueue is to allow multiple threads to
155
+ * execute callbacks for the same handle/key. This setting is selected to
156
+ * promote good performance and scalability for application.
157
+ *
158
+ * However this setting has a major drawback with regard to synchronization,
159
+ * and application MUST carefully follow the following guidelines to ensure
160
+ * that parallel access to the key does not cause problems:
161
+ *
162
+ * - Always note that callback may be called simultaneously for the same
163
+ * key.
164
+ * - <b>Care must be taken when unregistering a key</b> from the
165
+ * ioqueue. Application must take care that when one thread is issuing
166
+ * an unregistration, other thread is not simultaneously invoking the
167
+ * callback <b>to the same key</b>.
168
+ *\n
169
+ * This happens because the ioqueue functions are working with a pointer
170
+ * to the key, and there is a possible race condition where the pointer
171
+ * has been rendered invalid by other threads before the ioqueue has a
172
+ * chance to acquire mutex on it.
173
+ *
174
+ * \subsection pj_ioq_disallow_concur Concurrency is Disabled
175
+ *
176
+ * Alternatively, application may disable key concurrency to make
177
+ * synchronization easier. As noted above, there are three ways to control
178
+ * key concurrency setting:
179
+ * - by controlling on per handle/key basis, with #pj_ioqueue_set_concurrency().
180
+ * - by changing default key concurrency setting on the ioqueue, with
181
+ * #pj_ioqueue_set_default_concurrency().
182
+ * - by changing the default concurrency on compile time, by declaring
183
+ * PJ_IOQUEUE_DEFAULT_ALLOW_CONCURRENCY macro to zero in your config_site.h
184
+ *
185
+ * \section pj_ioqeuue_examples_sec Examples
186
+ *
187
+ * For some examples on how to use the I/O Queue, please see:
188
+ *
189
+ * - I/O Queue TCP test: \src{pjlib/src/pjlib-test/ioq_tcp.c}
190
+ * - I/O Queue UDP test: \src{pjlib/src/pjlib-test/ioq_udp.c}
191
+ * - I/O Queue Performance test: \src{pjlib/src/pjlib-test/ioq_perf.c}
192
+ */
193
+
194
+
195
+ /**
196
+ * This structure describes operation specific key to be submitted to
197
+ * I/O Queue when performing the asynchronous operation. This key will
198
+ * be returned to the application when completion callback is called.
199
+ *
200
+ * Application normally wants to attach it's specific data in the
201
+ * \c user_data field so that it can keep track of which operation has
202
+ * completed when the callback is called. Alternatively, application can
203
+ * also extend this struct to include its data, because the pointer that
204
+ * is returned in the completion callback will be exactly the same as
205
+ * the pointer supplied when the asynchronous function is called.
206
+ */
207
+ typedef struct pj_ioqueue_op_key_t
208
+ {
209
+ void *internal__[32]; /**< Internal I/O Queue data. */
210
+ void *activesock_data; /**< Active socket data. */
211
+ void *user_data; /**< Application data. */
212
+ } pj_ioqueue_op_key_t;
213
+
214
+ /**
215
+ * This structure describes the callbacks to be called when I/O operation
216
+ * completes.
217
+ */
218
+ typedef struct pj_ioqueue_callback
219
+ {
220
+ /**
221
+ * This callback is called when #pj_ioqueue_recv or #pj_ioqueue_recvfrom
222
+ * completes.
223
+ *
224
+ * @param key The key.
225
+ * @param op_key Operation key.
226
+ * @param bytes_read >= 0 to indicate the amount of data read,
227
+ * otherwise negative value containing the error
228
+ * code. To obtain the pj_status_t error code, use
229
+ * (pj_status_t code = -bytes_read).
230
+ */
231
+ void (*on_read_complete)(pj_ioqueue_key_t *key,
232
+ pj_ioqueue_op_key_t *op_key,
233
+ pj_ssize_t bytes_read);
234
+
235
+ /**
236
+ * This callback is called when #pj_ioqueue_send or #pj_ioqueue_sendto
237
+ * completes.
238
+ *
239
+ * @param key The key.
240
+ * @param op_key Operation key.
241
+ * @param bytes_sent >= 0 to indicate the amount of data written,
242
+ * otherwise negative value containing the error
243
+ * code. To obtain the pj_status_t error code, use
244
+ * (pj_status_t code = -bytes_sent).
245
+ */
246
+ void (*on_write_complete)(pj_ioqueue_key_t *key,
247
+ pj_ioqueue_op_key_t *op_key,
248
+ pj_ssize_t bytes_sent);
249
+
250
+ /**
251
+ * This callback is called when #pj_ioqueue_accept completes.
252
+ *
253
+ * @param key The key.
254
+ * @param op_key Operation key.
255
+ * @param sock Newly connected socket.
256
+ * @param status Zero if the operation completes successfully.
257
+ */
258
+ void (*on_accept_complete)(pj_ioqueue_key_t *key,
259
+ pj_ioqueue_op_key_t *op_key,
260
+ pj_sock_t sock,
261
+ pj_status_t status);
262
+
263
+ /**
264
+ * This callback is called when #pj_ioqueue_connect completes.
265
+ *
266
+ * @param key The key.
267
+ * @param status PJ_SUCCESS if the operation completes successfully.
268
+ */
269
+ void (*on_connect_complete)(pj_ioqueue_key_t *key,
270
+ pj_status_t status);
271
+ } pj_ioqueue_callback;
272
+
273
+
274
+ /**
275
+ * Types of pending I/O Queue operation. This enumeration is only used
276
+ * internally within the ioqueue.
277
+ */
278
+ typedef enum pj_ioqueue_operation_e
279
+ {
280
+ PJ_IOQUEUE_OP_NONE = 0, /**< No operation. */
281
+ PJ_IOQUEUE_OP_READ = 1, /**< read() operation. */
282
+ PJ_IOQUEUE_OP_RECV = 2, /**< recv() operation. */
283
+ PJ_IOQUEUE_OP_RECV_FROM = 4, /**< recvfrom() operation. */
284
+ PJ_IOQUEUE_OP_WRITE = 8, /**< write() operation. */
285
+ PJ_IOQUEUE_OP_SEND = 16, /**< send() operation. */
286
+ PJ_IOQUEUE_OP_SEND_TO = 32, /**< sendto() operation. */
287
+ #if defined(PJ_HAS_TCP) && PJ_HAS_TCP != 0
288
+ PJ_IOQUEUE_OP_ACCEPT = 64, /**< accept() operation. */
289
+ PJ_IOQUEUE_OP_CONNECT = 128 /**< connect() operation. */
290
+ #endif /* PJ_HAS_TCP */
291
+ } pj_ioqueue_operation_e;
292
+
293
+
294
+ /**
295
+ * This macro specifies the maximum number of events that can be
296
+ * processed by the ioqueue on a single poll cycle, on implementation
297
+ * that supports it. The value is only meaningfull when specified
298
+ * during PJLIB build.
299
+ */
300
+ #ifndef PJ_IOQUEUE_MAX_EVENTS_IN_SINGLE_POLL
301
+ # define PJ_IOQUEUE_MAX_EVENTS_IN_SINGLE_POLL (16)
302
+ #endif
303
+
304
+
305
+ /**
306
+ * This macro specifies the maximum event candidates collected by each
307
+ * polling thread to be able to reach maximum number of processed events
308
+ * (i.e: PJ_IOQUEUE_MAX_EVENTS_IN_SINGLE_POLL) in each poll cycle.
309
+ * An event candidate will be dispatched to application as event unless
310
+ * it is already being dispatched by other polling thread. So in order to
311
+ * anticipate such race condition, each poll operation should collects its
312
+ * event candidates more than PJ_IOQUEUE_MAX_EVENTS_IN_SINGLE_POLL, the
313
+ * recommended value is (PJ_IOQUEUE_MAX_EVENTS_IN_SINGLE_POLL *
314
+ * number of polling threads).
315
+ *
316
+ * The value is only meaningfull when specified during PJLIB build and
317
+ * is only effective on multiple polling threads environment.
318
+ */
319
+ #if !defined(PJ_IOQUEUE_MAX_CAND_EVENTS) || \
320
+ PJ_IOQUEUE_MAX_CAND_EVENTS < PJ_IOQUEUE_MAX_EVENTS_IN_SINGLE_POLL
321
+ # undef PJ_IOQUEUE_MAX_CAND_EVENTS
322
+ # define PJ_IOQUEUE_MAX_CAND_EVENTS PJ_IOQUEUE_MAX_EVENTS_IN_SINGLE_POLL
323
+ #endif
324
+
325
+
326
+ /**
327
+ * When this flag is specified in ioqueue's recv() or send() operations,
328
+ * the ioqueue will always mark the operation as asynchronous.
329
+ */
330
+ #define PJ_IOQUEUE_ALWAYS_ASYNC ((pj_uint32_t)1 << (pj_uint32_t)31)
331
+
332
+
333
+ /**
334
+ * Epoll flags.
335
+ */
336
+ typedef enum pj_ioqueue_epoll_flag
337
+ {
338
+ /** Use of EPOLLEXCLUSIVE.
339
+ */
340
+ PJ_IOQUEUE_EPOLL_EXCLUSIVE = 1,
341
+
342
+ /** Use of EPOLLONESHOT.
343
+ */
344
+ PJ_IOQUEUE_EPOLL_ONESHOT = 2,
345
+
346
+ /**
347
+ * Default flag to specify which epoll type to use, which mean to use
348
+ * EPOLLEXCLUSIVE if available, otherwise EPOLLONESHOT, otherwise "bare"
349
+ * epoll when neither are available.
350
+ */
351
+ PJ_IOQUEUE_EPOLL_AUTO = PJ_IOQUEUE_EPOLL_EXCLUSIVE |
352
+ PJ_IOQUEUE_EPOLL_ONESHOT,
353
+
354
+ } pj_ioqueue_epoll_flag;
355
+
356
+
357
+ /**
358
+ * Additional settings that can be given during ioqueue creation. Application
359
+ * MUST initialize this structure with #pj_ioqueue_cfg_default().
360
+ */
361
+ typedef struct pj_ioqueue_cfg
362
+ {
363
+ /**
364
+ * Specify flags to control e.g. how events are handled when epoll backend
365
+ * is used on Linux. The values are combination of pj_ioqueue_epoll_flag.
366
+ * The default value is PJ_IOQUEUE_DEFAULT_EPOLL_FLAGS, which by default
367
+ * is set to PJ_IOQUEUE_EPOLL_AUTO. This setting will be ignored for other
368
+ * ioqueue backends.
369
+ */
370
+ unsigned epoll_flags;
371
+
372
+ /**
373
+ * Default concurrency for the handles registered to this ioqueue. Setting
374
+ * this to non-zero enables a handle to process more than one operations
375
+ * at the same time using different threads. Default is
376
+ * PJ_IOQUEUE_DEFAULT_ALLOW_CONCURRENCY. This setting is equivalent to
377
+ * calling pj_ioqueue_set_default_concurrency() after creating the ioqueue.
378
+ */
379
+ pj_bool_t default_concurrency;
380
+
381
+ } pj_ioqueue_cfg;
382
+
383
+
384
+ /**
385
+ * Initialize the ioqueue configuration with the default values.
386
+ *
387
+ * @param cfg The configuration to be initialized.
388
+ */
389
+ PJ_DECL(void) pj_ioqueue_cfg_default(pj_ioqueue_cfg *cfg);
390
+
391
+
392
+ /**
393
+ * Return the name of the ioqueue implementation.
394
+ *
395
+ * @return Implementation name.
396
+ */
397
+ PJ_DECL(const char*) pj_ioqueue_name(void);
398
+
399
+
400
+ /**
401
+ * Create a new I/O Queue framework.
402
+ *
403
+ * @param pool The pool to allocate the I/O queue structure.
404
+ * @param max_fd The maximum number of handles to be supported, which
405
+ * should not exceed PJ_IOQUEUE_MAX_HANDLES.
406
+ * @param ioqueue Pointer to hold the newly created I/O Queue.
407
+ *
408
+ * @return PJ_SUCCESS on success.
409
+ */
410
+ PJ_DECL(pj_status_t) pj_ioqueue_create( pj_pool_t *pool,
411
+ pj_size_t max_fd,
412
+ pj_ioqueue_t **ioqueue);
413
+
414
+ /**
415
+ * Create a new I/O Queue framework.
416
+ *
417
+ * @param pool The pool to allocate the I/O queue structure.
418
+ * @param max_fd The maximum number of handles to be supported, which
419
+ * should not exceed PJ_IOQUEUE_MAX_HANDLES.
420
+ * @param cfg Optional ioqueue configuration. Application must
421
+ * initialize this structure with pj_ioqueue_cfg_default()
422
+ * first. If this is not specified, default config values
423
+ * as set pj_ioqueue_cfg_default() by will be used.
424
+ * @param ioqueue Pointer to hold the newly created I/O Queue.
425
+ *
426
+ * @return PJ_SUCCESS on success.
427
+ */
428
+ PJ_DECL(pj_status_t) pj_ioqueue_create2( pj_pool_t *pool,
429
+ pj_size_t max_fd,
430
+ const pj_ioqueue_cfg *cfg,
431
+ pj_ioqueue_t **ioqueue);
432
+
433
+ /**
434
+ * Destroy the I/O queue.
435
+ *
436
+ * @param ioque The I/O Queue to be destroyed.
437
+ *
438
+ * @return PJ_SUCCESS if success.
439
+ */
440
+ PJ_DECL(pj_status_t) pj_ioqueue_destroy( pj_ioqueue_t *ioque );
441
+
442
+ /**
443
+ * Set the lock object to be used by the I/O Queue. This function can only
444
+ * be called right after the I/O queue is created, before any handle is
445
+ * registered to the I/O queue.
446
+ *
447
+ * Initially the I/O queue is created with non-recursive mutex protection.
448
+ * Applications can supply alternative lock to be used by calling this
449
+ * function.
450
+ *
451
+ * @param ioque The ioqueue instance.
452
+ * @param lock The lock to be used by the ioqueue.
453
+ * @param auto_delete In non-zero, the lock will be deleted by the ioqueue.
454
+ *
455
+ * @return PJ_SUCCESS or the appropriate error code.
456
+ */
457
+ PJ_DECL(pj_status_t) pj_ioqueue_set_lock( pj_ioqueue_t *ioque,
458
+ pj_lock_t *lock,
459
+ pj_bool_t auto_delete );
460
+
461
+ /**
462
+ * Set default concurrency policy for this ioqueue. If this function is not
463
+ * called, the default concurrency policy for the ioqueue is controlled by
464
+ * compile time setting PJ_IOQUEUE_DEFAULT_ALLOW_CONCURRENCY.
465
+ *
466
+ * Note that changing the concurrency setting to the ioqueue will only affect
467
+ * subsequent key registrations. To modify the concurrency setting for
468
+ * individual key, use #pj_ioqueue_set_concurrency().
469
+ *
470
+ * @param ioqueue The ioqueue instance.
471
+ * @param allow Non-zero to allow concurrent callback calls, or
472
+ * PJ_FALSE to disallow it.
473
+ *
474
+ * @return PJ_SUCCESS on success or the appropriate error code.
475
+ */
476
+ PJ_DECL(pj_status_t) pj_ioqueue_set_default_concurrency(pj_ioqueue_t *ioqueue,
477
+ pj_bool_t allow);
478
+
479
+ /**
480
+ * Register a socket to the I/O queue framework.
481
+ * When a socket is registered to the IOQueue, it may be modified to use
482
+ * non-blocking IO. If it is modified, there is no guarantee that this
483
+ * modification will be restored after the socket is unregistered.
484
+ *
485
+ * @param pool To allocate the resource for the specified handle,
486
+ * which must be valid until the handle/key is unregistered
487
+ * from I/O Queue.
488
+ * @param ioque The I/O Queue.
489
+ * @param sock The socket.
490
+ * @param user_data User data to be associated with the key, which can be
491
+ * retrieved later.
492
+ * @param cb Callback to be called when I/O operation completes.
493
+ * @param key Pointer to receive the key to be associated with this
494
+ * socket. Subsequent I/O queue operation will need this
495
+ * key.
496
+ *
497
+ * @return PJ_SUCCESS on success, or the error code.
498
+ */
499
+ PJ_DECL(pj_status_t) pj_ioqueue_register_sock( pj_pool_t *pool,
500
+ pj_ioqueue_t *ioque,
501
+ pj_sock_t sock,
502
+ void *user_data,
503
+ const pj_ioqueue_callback *cb,
504
+ pj_ioqueue_key_t **key );
505
+
506
+ /**
507
+ * Variant of pj_ioqueue_register_sock() with additional group lock parameter.
508
+ * If group lock is set for the key, the key will add the reference counter
509
+ * when the socket is registered and decrease it when it is destroyed.
510
+ */
511
+ PJ_DECL(pj_status_t) pj_ioqueue_register_sock2(pj_pool_t *pool,
512
+ pj_ioqueue_t *ioque,
513
+ pj_sock_t sock,
514
+ pj_grp_lock_t *grp_lock,
515
+ void *user_data,
516
+ const pj_ioqueue_callback *cb,
517
+ pj_ioqueue_key_t **key );
518
+
519
+ /**
520
+ * Unregister from the I/O Queue framework. Caller must make sure that
521
+ * the key doesn't have any pending operations before calling this function,
522
+ * by calling #pj_ioqueue_is_pending() for all previously submitted
523
+ * operations except asynchronous connect, and if necessary call
524
+ * #pj_ioqueue_post_completion() to cancel the pending operations.
525
+ *
526
+ * Note that asynchronous connect operation will automatically be
527
+ * cancelled during the unregistration.
528
+ *
529
+ * Also note that when I/O Completion Port backend is used, application
530
+ * MUST close the handle immediately after unregistering the key. This is
531
+ * because there is no unregistering API for IOCP. The only way to
532
+ * unregister the handle from IOCP is to close the handle.
533
+ *
534
+ * @param key The key that was previously obtained from registration.
535
+ *
536
+ * @return PJ_SUCCESS on success or the error code.
537
+ *
538
+ * @see pj_ioqueue_is_pending
539
+ */
540
+ PJ_DECL(pj_status_t) pj_ioqueue_unregister( pj_ioqueue_key_t *key );
541
+
542
+
543
+ /**
544
+ * Get user data associated with an ioqueue key.
545
+ *
546
+ * @param key The key that was previously obtained from registration.
547
+ *
548
+ * @return The user data associated with the descriptor, or NULL
549
+ * on error or if no data is associated with the key during
550
+ * registration.
551
+ */
552
+ PJ_DECL(void*) pj_ioqueue_get_user_data( pj_ioqueue_key_t *key );
553
+
554
+ /**
555
+ * Set or change the user data to be associated with the file descriptor or
556
+ * handle or socket descriptor.
557
+ *
558
+ * @param key The key that was previously obtained from registration.
559
+ * @param user_data User data to be associated with the descriptor.
560
+ * @param old_data Optional parameter to retrieve the old user data.
561
+ *
562
+ * @return PJ_SUCCESS on success or the error code.
563
+ */
564
+ PJ_DECL(pj_status_t) pj_ioqueue_set_user_data( pj_ioqueue_key_t *key,
565
+ void *user_data,
566
+ void **old_data);
567
+
568
+ /**
569
+ * Configure whether the ioqueue is allowed to call the key's callback
570
+ * concurrently/in parallel. The default concurrency setting for the key
571
+ * is controlled by ioqueue's default concurrency value, which can be
572
+ * changed by calling #pj_ioqueue_set_default_concurrency().
573
+ *
574
+ * If concurrency is allowed for the key, it means that if there are more
575
+ * than one pending operations complete simultaneously, more than one
576
+ * threads may call the key's callback at the same time. This generally
577
+ * would promote good scalability for application, at the expense of more
578
+ * complexity to manage the concurrent accesses in application's code.
579
+ *
580
+ * Alternatively application may disable the concurrent access by
581
+ * setting the \a allow flag to false. With concurrency disabled, only
582
+ * one thread can call the key's callback at one time.
583
+ *
584
+ * @param key The key that was previously obtained from registration.
585
+ * @param allow Set this to non-zero to allow concurrent callback calls
586
+ * and zero (PJ_FALSE) to disallow it.
587
+ *
588
+ * @return PJ_SUCCESS on success or the appropriate error code.
589
+ */
590
+ PJ_DECL(pj_status_t) pj_ioqueue_set_concurrency(pj_ioqueue_key_t *key,
591
+ pj_bool_t allow);
592
+
593
+ /**
594
+ * Acquire the key's mutex. When the key's concurrency is disabled,
595
+ * application may call this function to synchronize its operation
596
+ * with the key's callback (i.e. this function will block until the
597
+ * key's callback returns).
598
+ *
599
+ * @param key The key that was previously obtained from registration.
600
+ *
601
+ * @return PJ_SUCCESS on success or the appropriate error code.
602
+ */
603
+ PJ_DECL(pj_status_t) pj_ioqueue_lock_key(pj_ioqueue_key_t *key);
604
+
605
+ /**
606
+ * Try to acquire the key's mutex. When the key's concurrency is disabled,
607
+ * application may call this function to synchronize its operation
608
+ * with the key's callback.
609
+ *
610
+ * @param key The key that was previously obtained from registration.
611
+ *
612
+ * @return PJ_SUCCESS on success or the appropriate error code.
613
+ */
614
+ PJ_DECL(pj_status_t) pj_ioqueue_trylock_key(pj_ioqueue_key_t *key);
615
+
616
+ /**
617
+ * Release the lock previously acquired with pj_ioqueue_lock_key().
618
+ *
619
+ * @param key The key that was previously obtained from registration.
620
+ *
621
+ * @return PJ_SUCCESS on success or the appropriate error code.
622
+ */
623
+ PJ_DECL(pj_status_t) pj_ioqueue_unlock_key(pj_ioqueue_key_t *key);
624
+
625
+ /**
626
+ * Initialize operation key.
627
+ *
628
+ * @param op_key The operation key to be initialied.
629
+ * @param size The size of the operation key.
630
+ */
631
+ PJ_DECL(void) pj_ioqueue_op_key_init( pj_ioqueue_op_key_t *op_key,
632
+ pj_size_t size );
633
+
634
+ /**
635
+ * Check if operation is pending on the specified operation key.
636
+ * The \c op_key must have been initialized with #pj_ioqueue_op_key_init()
637
+ * or submitted as pending operation before, or otherwise the result
638
+ * is undefined.
639
+ *
640
+ * @param key The key.
641
+ * @param op_key The operation key, previously submitted to any of
642
+ * the I/O functions and has returned PJ_EPENDING.
643
+ *
644
+ * @return Non-zero if operation is still pending.
645
+ */
646
+ PJ_DECL(pj_bool_t) pj_ioqueue_is_pending( pj_ioqueue_key_t *key,
647
+ pj_ioqueue_op_key_t *op_key );
648
+
649
+
650
+ /**
651
+ * Post completion status to the specified operation key and call the
652
+ * appropriate callback. When the callback is called, the number of bytes
653
+ * received in read/write callback or the status in accept/connect callback
654
+ * will be set from the \c bytes_status parameter.
655
+ *
656
+ * @param key The key.
657
+ * @param op_key Pending operation key.
658
+ * @param bytes_status Number of bytes or status to be set. A good value
659
+ * to put here is -PJ_ECANCELLED.
660
+ *
661
+ * @return PJ_SUCCESS if completion status has been successfully
662
+ * sent.
663
+ */
664
+ PJ_DECL(pj_status_t) pj_ioqueue_post_completion( pj_ioqueue_key_t *key,
665
+ pj_ioqueue_op_key_t *op_key,
666
+ pj_ssize_t bytes_status );
667
+
668
+
669
+ /**
670
+ * Clear ioqueue key states. This function will cancel any outstanding
671
+ * operations on that key, without invoking any completion callback.
672
+ * After calling this function, application should reinit its all operation
673
+ * keys, i.e: using pj_ioqueue_op_key_init(), before reusing them.
674
+ *
675
+ * @param key The key.
676
+ *
677
+ * @return PJ_SUCCESS on success or the appropriate error code.
678
+ */
679
+ PJ_DECL(pj_status_t) pj_ioqueue_clear_key( pj_ioqueue_key_t *key );
680
+
681
+
682
+
683
+ #if defined(PJ_HAS_TCP) && PJ_HAS_TCP != 0
684
+ /**
685
+ * Instruct I/O Queue to accept incoming connection on the specified
686
+ * listening socket. This function will return immediately (i.e. non-blocking)
687
+ * regardless whether a connection is immediately available. If the function
688
+ * can't complete immediately, the caller will be notified about the incoming
689
+ * connection when it calls pj_ioqueue_poll(). If a new connection is
690
+ * immediately available, the function returns PJ_SUCCESS with the new
691
+ * connection; in this case, the callback WILL NOT be called.
692
+ *
693
+ * @param key The key which registered to the server socket.
694
+ * @param op_key An operation specific key to be associated with the
695
+ * pending operation, so that application can keep track of
696
+ * which operation has been completed when the callback is
697
+ * called.
698
+ * @param new_sock Argument which contain pointer to receive the new socket
699
+ * for the incoming connection.
700
+ * @param local Optional argument which contain pointer to variable to
701
+ * receive local address.
702
+ * @param remote Optional argument which contain pointer to variable to
703
+ * receive the remote address.
704
+ * @param addrlen On input, contains the length of the buffer for the
705
+ * address, and on output, contains the actual length of the
706
+ * address. This argument is optional.
707
+ * @return
708
+ * - PJ_SUCCESS When connection is available immediately, and the
709
+ * parameters will be updated to contain information about
710
+ * the new connection. In this case, a completion callback
711
+ * WILL NOT be called.
712
+ * - PJ_EPENDING If no connection is available immediately. When a new
713
+ * connection arrives, the callback will be called.
714
+ * - non-zero which indicates the appropriate error code.
715
+ */
716
+ PJ_DECL(pj_status_t) pj_ioqueue_accept( pj_ioqueue_key_t *key,
717
+ pj_ioqueue_op_key_t *op_key,
718
+ pj_sock_t *new_sock,
719
+ pj_sockaddr_t *local,
720
+ pj_sockaddr_t *remote,
721
+ int *addrlen );
722
+
723
+ /**
724
+ * Initiate non-blocking socket connect. If the socket can NOT be connected
725
+ * immediately, asynchronous connect() will be scheduled and caller will be
726
+ * notified via completion callback when it calls pj_ioqueue_poll(). If
727
+ * socket is connected immediately, the function returns PJ_SUCCESS and
728
+ * completion callback WILL NOT be called.
729
+ *
730
+ * @param key The key associated with TCP socket
731
+ * @param addr The remote address.
732
+ * @param addrlen The remote address length.
733
+ *
734
+ * @return
735
+ * - PJ_SUCCESS If socket is connected immediately. In this case, the
736
+ * completion callback WILL NOT be called.
737
+ * - PJ_EPENDING If operation is queued, or
738
+ * - non-zero Indicates the error code.
739
+ */
740
+ PJ_DECL(pj_status_t) pj_ioqueue_connect( pj_ioqueue_key_t *key,
741
+ const pj_sockaddr_t *addr,
742
+ int addrlen );
743
+
744
+ #endif /* PJ_HAS_TCP */
745
+
746
+ /**
747
+ * Poll the I/O Queue for completed events.
748
+ *
749
+ * Note: polling the ioqueue is not necessary in Symbian. Please see
750
+ * @ref PJ_SYMBIAN_OS for more info.
751
+ *
752
+ * @param ioque the I/O Queue.
753
+ * @param timeout polling timeout, or NULL if the thread wishes to wait
754
+ * indefinetely for the event.
755
+ *
756
+ * @return
757
+ * - zero if timed out (no event).
758
+ * - (<0) if error occured during polling. Callback will NOT be called.
759
+ * - (>1) to indicate numbers of events. Callbacks have been called.
760
+ */
761
+ PJ_DECL(int) pj_ioqueue_poll( pj_ioqueue_t *ioque,
762
+ const pj_time_val *timeout);
763
+
764
+
765
+ /**
766
+ * Instruct the I/O Queue to read from the specified handle. This function
767
+ * returns immediately (i.e. non-blocking) regardless whether some data has
768
+ * been transferred. If the operation can't complete immediately, caller will
769
+ * be notified about the completion when it calls pj_ioqueue_poll(). If data
770
+ * is immediately available, the function will return PJ_SUCCESS and the
771
+ * callback WILL NOT be called.
772
+ *
773
+ * @param key The key that uniquely identifies the handle.
774
+ * @param op_key An operation specific key to be associated with the
775
+ * pending operation, so that application can keep track of
776
+ * which operation has been completed when the callback is
777
+ * called. Caller must make sure that this key remains
778
+ * valid until the function completes.
779
+ * @param buffer The buffer to hold the read data. The caller MUST make sure
780
+ * that this buffer remain valid until the framework completes
781
+ * reading the handle.
782
+ * @param length On input, it specifies the size of the buffer. If data is
783
+ * available to be read immediately, the function returns
784
+ * PJ_SUCCESS and this argument will be filled with the
785
+ * amount of data read. If the function is pending, caller
786
+ * will be notified about the amount of data read in the
787
+ * callback. This parameter can point to local variable in
788
+ * caller's stack and doesn't have to remain valid for the
789
+ * duration of pending operation.
790
+ * @param flags Recv flag. If flags has PJ_IOQUEUE_ALWAYS_ASYNC then
791
+ * the function will never return PJ_SUCCESS.
792
+ *
793
+ * @return
794
+ * - PJ_SUCCESS If immediate data has been received in the buffer. In this
795
+ * case, the callback WILL NOT be called.
796
+ * - PJ_EPENDING If the operation has been queued, and the callback will be
797
+ * called when data has been received.
798
+ * - non-zero The return value indicates the error code.
799
+ */
800
+ PJ_DECL(pj_status_t) pj_ioqueue_recv( pj_ioqueue_key_t *key,
801
+ pj_ioqueue_op_key_t *op_key,
802
+ void *buffer,
803
+ pj_ssize_t *length,
804
+ pj_uint32_t flags );
805
+
806
+ /**
807
+ * This function behaves similarly as #pj_ioqueue_recv(), except that it is
808
+ * normally called for socket, and the remote address will also be returned
809
+ * along with the data. Caller MUST make sure that both buffer and addr
810
+ * remain valid until the framework completes reading the data.
811
+ *
812
+ * @param key The key that uniquely identifies the handle.
813
+ * @param op_key An operation specific key to be associated with the
814
+ * pending operation, so that application can keep track of
815
+ * which operation has been completed when the callback is
816
+ * called.
817
+ * @param buffer The buffer to hold the read data. The caller MUST make sure
818
+ * that this buffer remain valid until the framework completes
819
+ * reading the handle.
820
+ * @param length On input, it specifies the size of the buffer. If data is
821
+ * available to be read immediately, the function returns
822
+ * PJ_SUCCESS and this argument will be filled with the
823
+ * amount of data read. If the function is pending, caller
824
+ * will be notified about the amount of data read in the
825
+ * callback. This parameter can point to local variable in
826
+ * caller's stack and doesn't have to remain valid for the
827
+ * duration of pending operation.
828
+ * @param flags Recv flag. If flags has PJ_IOQUEUE_ALWAYS_ASYNC then
829
+ * the function will never return PJ_SUCCESS.
830
+ * @param addr Optional Pointer to buffer to receive the address.
831
+ * @param addrlen On input, specifies the length of the address buffer.
832
+ * On output, it will be filled with the actual length of
833
+ * the address. This argument can be NULL if \c addr is not
834
+ * specified.
835
+ *
836
+ * @return
837
+ * - PJ_SUCCESS If immediate data has been received. In this case, the
838
+ * callback must have been called before this function
839
+ * returns, and no pending operation is scheduled.
840
+ * - PJ_EPENDING If the operation has been queued.
841
+ * - non-zero The return value indicates the error code.
842
+ */
843
+ PJ_DECL(pj_status_t) pj_ioqueue_recvfrom( pj_ioqueue_key_t *key,
844
+ pj_ioqueue_op_key_t *op_key,
845
+ void *buffer,
846
+ pj_ssize_t *length,
847
+ pj_uint32_t flags,
848
+ pj_sockaddr_t *addr,
849
+ int *addrlen);
850
+
851
+ /**
852
+ * Instruct the I/O Queue to write to the handle. This function will return
853
+ * immediately (i.e. non-blocking) regardless whether some data has been
854
+ * transferred. If the function can't complete immediately, the caller will
855
+ * be notified about the completion when it calls pj_ioqueue_poll(). If
856
+ * operation completes immediately and data has been transferred, the function
857
+ * returns PJ_SUCCESS and the callback will NOT be called.
858
+ *
859
+ * @param key The key that identifies the handle.
860
+ * @param op_key An operation specific key to be associated with the
861
+ * pending operation, so that application can keep track of
862
+ * which operation has been completed when the callback is
863
+ * called.
864
+ * @param data The data to send. Caller MUST make sure that this buffer
865
+ * remains valid until the write operation completes.
866
+ * @param length On input, it specifies the length of data to send. When
867
+ * data was sent immediately, this function returns PJ_SUCCESS
868
+ * and this parameter contains the length of data sent. If
869
+ * data can not be sent immediately, an asynchronous operation
870
+ * is scheduled and caller will be notified via callback the
871
+ * number of bytes sent. This parameter can point to local
872
+ * variable on caller's stack and doesn't have to remain
873
+ * valid until the operation has completed.
874
+ * @param flags Send flags. If flags has PJ_IOQUEUE_ALWAYS_ASYNC then
875
+ * the function will never return PJ_SUCCESS.
876
+ *
877
+ * @return
878
+ * - PJ_SUCCESS If data was immediately transferred. In this case, no
879
+ * pending operation has been scheduled and the callback
880
+ * WILL NOT be called.
881
+ * - PJ_EPENDING If the operation has been queued. Once data base been
882
+ * transferred, the callback will be called.
883
+ * - non-zero The return value indicates the error code.
884
+ */
885
+ PJ_DECL(pj_status_t) pj_ioqueue_send( pj_ioqueue_key_t *key,
886
+ pj_ioqueue_op_key_t *op_key,
887
+ const void *data,
888
+ pj_ssize_t *length,
889
+ pj_uint32_t flags );
890
+
891
+
892
+ /**
893
+ * Instruct the I/O Queue to write to the handle. This function will return
894
+ * immediately (i.e. non-blocking) regardless whether some data has been
895
+ * transferred. If the function can't complete immediately, the caller will
896
+ * be notified about the completion when it calls pj_ioqueue_poll(). If
897
+ * operation completes immediately and data has been transferred, the function
898
+ * returns PJ_SUCCESS and the callback will NOT be called.
899
+ *
900
+ * @param key the key that identifies the handle.
901
+ * @param op_key An operation specific key to be associated with the
902
+ * pending operation, so that application can keep track of
903
+ * which operation has been completed when the callback is
904
+ * called.
905
+ * @param data the data to send. Caller MUST make sure that this buffer
906
+ * remains valid until the write operation completes.
907
+ * @param length On input, it specifies the length of data to send. When
908
+ * data was sent immediately, this function returns PJ_SUCCESS
909
+ * and this parameter contains the length of data sent. If
910
+ * data can not be sent immediately, an asynchronous operation
911
+ * is scheduled and caller will be notified via callback the
912
+ * number of bytes sent. This parameter can point to local
913
+ * variable on caller's stack and doesn't have to remain
914
+ * valid until the operation has completed.
915
+ * @param flags send flags. If flags has PJ_IOQUEUE_ALWAYS_ASYNC then
916
+ * the function will never return PJ_SUCCESS.
917
+ * @param addr Optional remote address.
918
+ * @param addrlen Remote address length, \c addr is specified.
919
+ *
920
+ * @return
921
+ * - PJ_SUCCESS If data was immediately written.
922
+ * - PJ_EPENDING If the operation has been queued.
923
+ * - non-zero The return value indicates the error code.
924
+ */
925
+ PJ_DECL(pj_status_t) pj_ioqueue_sendto( pj_ioqueue_key_t *key,
926
+ pj_ioqueue_op_key_t *op_key,
927
+ const void *data,
928
+ pj_ssize_t *length,
929
+ pj_uint32_t flags,
930
+ const pj_sockaddr_t *addr,
931
+ int addrlen);
932
+
933
+
934
+ /**
935
+ * Get the underlying OS handle associated with an ioqueue instance.
936
+ *
937
+ * @param ioqueue The ioqueue instance.
938
+ *
939
+ * @return The OS handle associated with the instance.
940
+ * For epoll/kqueue this will be a pointer to the file
941
+ * descriptor. For all other platforms, this will be a pointer
942
+ * to a platform-specific handle.
943
+ * If no handle is available, NULL will be returned.
944
+ */
945
+ PJ_DECL(pj_oshandle_t) pj_ioqueue_get_os_handle( pj_ioqueue_t *ioqueue );
946
+
947
+
948
+ /**
949
+ * @}
950
+ */
951
+
952
+ PJ_END_DECL
953
+
954
+ #endif /* __PJ_IOQUEUE_H__ */
955
+