@corellium/corellium-cli 1.0.3 → 1.0.6

Sign up to get free protection for your applications and to get access to all the features.
Files changed (490) hide show
  1. package/README.md +5 -17
  2. package/docs/OVERVIEW.md +1 -1
  3. package/jenkinsbuild/build.sh +1 -1
  4. package/package.json +3 -3
  5. package/src/TrialAccount.js +76 -0
  6. package/src/commands/Client.js +2 -2
  7. package/src/commands/agent/Agent.js +10 -19
  8. package/src/commands/agent/apps.js +2 -1
  9. package/src/commands/agent/file.js +2 -1
  10. package/src/commands/agent/index.js +1 -0
  11. package/src/commands/agent/ready.js +43 -0
  12. package/src/commands/extensions/delete.js +2 -1
  13. package/src/commands/extensions/list.js +2 -1
  14. package/src/commands/extensions/load.js +2 -1
  15. package/src/commands/extensions/validate.js +2 -1
  16. package/src/commands/firmware/list.js +2 -1
  17. package/src/commands/firmware/load.js +2 -1
  18. package/src/commands/images/create.js +2 -1
  19. package/src/commands/images/delete.js +2 -1
  20. package/src/commands/images/list.js +2 -1
  21. package/src/commands/instances/Instance.js +27 -0
  22. package/src/commands/instances/create.js +11 -4
  23. package/src/commands/instances/delete.js +20 -5
  24. package/src/commands/instances/index.js +2 -1
  25. package/src/commands/instances/list.js +11 -5
  26. package/src/commands/instances/start.js +2 -1
  27. package/src/commands/instances/stop.js +2 -1
  28. package/src/commands/instances/upgrade.js +90 -0
  29. package/src/commands/login.js +14 -2
  30. package/src/commands/logout.js +2 -1
  31. package/src/commands/projects/create.js +2 -1
  32. package/src/commands/projects/delete.js +2 -1
  33. package/src/commands/projects/list.js +2 -1
  34. package/src/commands/signup.js +14 -5
  35. package/src/commands/webplayer/WebPlayer.js +2 -1
  36. package/src/commands/webplayer/create.js +8 -1
  37. package/src/commands/webplayer/destroy.js +2 -1
  38. package/src/commands/webplayer/list.js +19 -17
  39. package/src/commands/webplayer/login.js +2 -1
  40. package/src/error.js +14 -1
  41. package/src/logging.js +1 -1
  42. package/src/profile.js +12 -9
  43. package/src/resumable.js +1314 -0
  44. package/src/table.js +7 -2
  45. package/src/upload.js +64 -2
  46. package/src/utils.js +11 -4
  47. package/test/test.js +89 -0
  48. package/example/WebPlayerSample.js +0 -263
  49. package/node_modules/@corellium/corellium-api/README.md +0 -1210
  50. package/node_modules/@corellium/corellium-api/node_modules/form-data/License +0 -19
  51. package/node_modules/@corellium/corellium-api/node_modules/form-data/README.md.bak +0 -356
  52. package/node_modules/@corellium/corellium-api/node_modules/form-data/Readme.md +0 -356
  53. package/node_modules/@corellium/corellium-api/node_modules/form-data/index.d.ts +0 -62
  54. package/node_modules/@corellium/corellium-api/node_modules/form-data/lib/browser.js +0 -2
  55. package/node_modules/@corellium/corellium-api/node_modules/form-data/lib/form_data.js +0 -498
  56. package/node_modules/@corellium/corellium-api/node_modules/form-data/lib/populate.js +0 -10
  57. package/node_modules/@corellium/corellium-api/node_modules/form-data/package.json +0 -104
  58. package/node_modules/@corellium/corellium-api/node_modules/uuid/AUTHORS +0 -5
  59. package/node_modules/@corellium/corellium-api/node_modules/uuid/CHANGELOG.md +0 -119
  60. package/node_modules/@corellium/corellium-api/node_modules/uuid/LICENSE.md +0 -21
  61. package/node_modules/@corellium/corellium-api/node_modules/uuid/README.md +0 -276
  62. package/node_modules/@corellium/corellium-api/node_modules/uuid/bin/uuid +0 -65
  63. package/node_modules/@corellium/corellium-api/node_modules/uuid/index.js +0 -8
  64. package/node_modules/@corellium/corellium-api/node_modules/uuid/lib/bytesToUuid.js +0 -26
  65. package/node_modules/@corellium/corellium-api/node_modules/uuid/lib/md5-browser.js +0 -216
  66. package/node_modules/@corellium/corellium-api/node_modules/uuid/lib/md5.js +0 -25
  67. package/node_modules/@corellium/corellium-api/node_modules/uuid/lib/rng-browser.js +0 -34
  68. package/node_modules/@corellium/corellium-api/node_modules/uuid/lib/rng.js +0 -8
  69. package/node_modules/@corellium/corellium-api/node_modules/uuid/lib/sha1-browser.js +0 -89
  70. package/node_modules/@corellium/corellium-api/node_modules/uuid/lib/sha1.js +0 -25
  71. package/node_modules/@corellium/corellium-api/node_modules/uuid/lib/v35.js +0 -57
  72. package/node_modules/@corellium/corellium-api/node_modules/uuid/package.json +0 -103
  73. package/node_modules/@corellium/corellium-api/node_modules/uuid/v1.js +0 -109
  74. package/node_modules/@corellium/corellium-api/node_modules/uuid/v3.js +0 -4
  75. package/node_modules/@corellium/corellium-api/node_modules/uuid/v4.js +0 -29
  76. package/node_modules/@corellium/corellium-api/node_modules/uuid/v5.js +0 -3
  77. package/node_modules/@corellium/corellium-api/package.json +0 -106
  78. package/node_modules/@corellium/corellium-api/resumable.js +0 -1312
  79. package/node_modules/@corellium/corellium-api/src/agent.js +0 -962
  80. package/node_modules/@corellium/corellium-api/src/corellium.js +0 -444
  81. package/node_modules/@corellium/corellium-api/src/images.js +0 -131
  82. package/node_modules/@corellium/corellium-api/src/input.js +0 -178
  83. package/node_modules/@corellium/corellium-api/src/instance-updater.js +0 -56
  84. package/node_modules/@corellium/corellium-api/src/instance.js +0 -1031
  85. package/node_modules/@corellium/corellium-api/src/netmon.js +0 -308
  86. package/node_modules/@corellium/corellium-api/src/project.js +0 -393
  87. package/node_modules/@corellium/corellium-api/src/role.js +0 -65
  88. package/node_modules/@corellium/corellium-api/src/snapshot.js +0 -77
  89. package/node_modules/@corellium/corellium-api/src/team.js +0 -29
  90. package/node_modules/@corellium/corellium-api/src/user.js +0 -51
  91. package/node_modules/@corellium/corellium-api/src/util/fetch.js +0 -62
  92. package/node_modules/@corellium/corellium-api/src/util/sleep.js +0 -7
  93. package/node_modules/@corellium/corellium-api/test/integration-tests.js +0 -1292
  94. package/node_modules/@corellium/corellium-api/test/root-hook-set-flag-if-test-failed.js +0 -7
  95. package/node_modules/async-limiter/.eslintignore +0 -2
  96. package/node_modules/async-limiter/.nycrc +0 -10
  97. package/node_modules/async-limiter/.travis.yml +0 -9
  98. package/node_modules/async-limiter/LICENSE +0 -8
  99. package/node_modules/async-limiter/index.js +0 -67
  100. package/node_modules/async-limiter/package.json +0 -72
  101. package/node_modules/async-limiter/readme.md +0 -132
  102. package/node_modules/buffer-crc32/LICENSE +0 -19
  103. package/node_modules/buffer-crc32/README.md +0 -47
  104. package/node_modules/buffer-crc32/index.js +0 -111
  105. package/node_modules/buffer-crc32/package.json +0 -72
  106. package/node_modules/cross-fetch/LICENSE +0 -21
  107. package/node_modules/cross-fetch/README.md +0 -169
  108. package/node_modules/cross-fetch/dist/browser-polyfill.js +0 -532
  109. package/node_modules/cross-fetch/dist/browser-ponyfill.js +0 -554
  110. package/node_modules/cross-fetch/dist/cross-fetch.js +0 -2
  111. package/node_modules/cross-fetch/dist/cross-fetch.js.map +0 -1
  112. package/node_modules/cross-fetch/dist/node-polyfill.js +0 -11
  113. package/node_modules/cross-fetch/dist/node-ponyfill.js +0 -22
  114. package/node_modules/cross-fetch/dist/react-native-polyfill.js +0 -12
  115. package/node_modules/cross-fetch/dist/react-native-ponyfill.js +0 -6
  116. package/node_modules/cross-fetch/index.d.ts +0 -14
  117. package/node_modules/cross-fetch/package.json +0 -160
  118. package/node_modules/cross-fetch/polyfill/package.json +0 -8
  119. package/node_modules/duplexify/.travis.yml +0 -6
  120. package/node_modules/duplexify/LICENSE +0 -21
  121. package/node_modules/duplexify/README.md +0 -97
  122. package/node_modules/duplexify/example.js +0 -21
  123. package/node_modules/duplexify/index.js +0 -234
  124. package/node_modules/duplexify/package.json +0 -69
  125. package/node_modules/duplexify/test.js +0 -295
  126. package/node_modules/end-of-stream/LICENSE +0 -21
  127. package/node_modules/end-of-stream/README.md +0 -54
  128. package/node_modules/end-of-stream/index.js +0 -94
  129. package/node_modules/end-of-stream/package.json +0 -69
  130. package/node_modules/fast-stable-stringify/.npmignore +0 -4
  131. package/node_modules/fast-stable-stringify/.travis.yml +0 -10
  132. package/node_modules/fast-stable-stringify/LICENSE +0 -21
  133. package/node_modules/fast-stable-stringify/README.md +0 -81
  134. package/node_modules/fast-stable-stringify/cli/files-to-comparison-results.js +0 -67
  135. package/node_modules/fast-stable-stringify/cli/format-table.js +0 -70
  136. package/node_modules/fast-stable-stringify/cli/index.js +0 -19
  137. package/node_modules/fast-stable-stringify/fixtures/index.js +0 -5
  138. package/node_modules/fast-stable-stringify/fixtures/input-data-types.js +0 -191
  139. package/node_modules/fast-stable-stringify/fixtures/log-result.json +0 -22
  140. package/node_modules/fast-stable-stringify/fixtures/log.txt +0 -24
  141. package/node_modules/fast-stable-stringify/index.js +0 -73
  142. package/node_modules/fast-stable-stringify/karma.conf.js +0 -124
  143. package/node_modules/fast-stable-stringify/karma.conf.travis.js +0 -95
  144. package/node_modules/fast-stable-stringify/package.json +0 -77
  145. package/node_modules/fast-stable-stringify/results/escape-long/Chrome 60.0.3112 (Windows 7 0.0.0).json +0 -57
  146. package/node_modules/fast-stable-stringify/results/escape-long/Chrome Mobile 55.0.2883 (Android 6.0.0).json +0 -57
  147. package/node_modules/fast-stable-stringify/results/escape-long/Edge 14.14393.0 (Windows 10 0.0.0).json +0 -57
  148. package/node_modules/fast-stable-stringify/results/escape-long/Firefox 54.0.0 (Windows 7 0.0.0).json +0 -57
  149. package/node_modules/fast-stable-stringify/results/escape-long/IE 10.0.0 (Windows 7 0.0.0).json +0 -57
  150. package/node_modules/fast-stable-stringify/results/escape-long/IE 11.0.0 (Windows 7 0.0.0).json +0 -57
  151. package/node_modules/fast-stable-stringify/results/escape-long/IE 9.0.0 (Windows 7 0.0.0).json +0 -57
  152. package/node_modules/fast-stable-stringify/results/escape-long/Mobile Safari 10.0.0 (iOS 10.3.0).json +0 -57
  153. package/node_modules/fast-stable-stringify/results/escape-long/Safari 10.0.1 (Mac OS X 10.12.1).json +0 -57
  154. package/node_modules/fast-stable-stringify/results/escape-short/Chrome 60.0.3112 (Windows 7 0.0.0).json +0 -57
  155. package/node_modules/fast-stable-stringify/results/escape-short/Chrome Mobile 55.0.2883 (Android 6.0.0).json +0 -57
  156. package/node_modules/fast-stable-stringify/results/escape-short/Edge 14.14393.0 (Windows 10 0.0.0).json +0 -57
  157. package/node_modules/fast-stable-stringify/results/escape-short/Firefox 54.0.0 (Windows 7 0.0.0).json +0 -57
  158. package/node_modules/fast-stable-stringify/results/escape-short/IE 10.0.0 (Windows 7 0.0.0).json +0 -57
  159. package/node_modules/fast-stable-stringify/results/escape-short/IE 11.0.0 (Windows 7 0.0.0).json +0 -57
  160. package/node_modules/fast-stable-stringify/results/escape-short/IE 9.0.0 (Windows 7 0.0.0).json +0 -57
  161. package/node_modules/fast-stable-stringify/results/escape-short/Mobile Safari 10.0.0 (iOS 10.3.0).json +0 -57
  162. package/node_modules/fast-stable-stringify/results/escape-short/Safari 10.0.1 (Mac OS X 10.12.1).json +0 -57
  163. package/node_modules/fast-stable-stringify/results/escape.md +0 -20
  164. package/node_modules/fast-stable-stringify/results/itar-long/Chrome 60.0.3112 (Windows 7 0.0.0).json +0 -35
  165. package/node_modules/fast-stable-stringify/results/itar-long/Chrome Mobile 55.0.2883 (Android 6.0.0).json +0 -35
  166. package/node_modules/fast-stable-stringify/results/itar-long/Edge 14.14393.0 (Windows 10 0.0.0).json +0 -35
  167. package/node_modules/fast-stable-stringify/results/itar-long/Firefox 54.0.0 (Windows 7 0.0.0).json +0 -35
  168. package/node_modules/fast-stable-stringify/results/itar-long/IE 10.0.0 (Windows 7 0.0.0).json +0 -35
  169. package/node_modules/fast-stable-stringify/results/itar-long/IE 11.0.0 (Windows 7 0.0.0).json +0 -35
  170. package/node_modules/fast-stable-stringify/results/itar-long/IE 9.0.0 (Windows 7 0.0.0).json +0 -35
  171. package/node_modules/fast-stable-stringify/results/itar-long/Mobile Safari 10.0.0 (iOS 10.3.0).json +0 -35
  172. package/node_modules/fast-stable-stringify/results/itar-long/Safari 10.0.1 (Mac OS X 10.12.1).json +0 -35
  173. package/node_modules/fast-stable-stringify/results/itar-short/Chrome 60.0.3112 (Windows 7 0.0.0).json +0 -35
  174. package/node_modules/fast-stable-stringify/results/itar-short/Chrome Mobile 55.0.2883 (Android 6.0.0).json +0 -35
  175. package/node_modules/fast-stable-stringify/results/itar-short/Edge 14.14393.0 (Windows 10 0.0.0).json +0 -35
  176. package/node_modules/fast-stable-stringify/results/itar-short/Firefox 54.0.0 (Windows 7 0.0.0).json +0 -35
  177. package/node_modules/fast-stable-stringify/results/itar-short/IE 10.0.0 (Windows 7 0.0.0).json +0 -35
  178. package/node_modules/fast-stable-stringify/results/itar-short/IE 11.0.0 (Windows 7 0.0.0).json +0 -35
  179. package/node_modules/fast-stable-stringify/results/itar-short/IE 9.0.0 (Windows 7 0.0.0).json +0 -35
  180. package/node_modules/fast-stable-stringify/results/itar-short/Mobile Safari 10.0.0 (iOS 10.3.0).json +0 -35
  181. package/node_modules/fast-stable-stringify/results/itar-short/Safari 10.0.1 (Mac OS X 10.12.1).json +0 -35
  182. package/node_modules/fast-stable-stringify/results/itar.md +0 -20
  183. package/node_modules/fast-stable-stringify/results/iter/Chrome 60.0.3112 (Windows 7 0.0.0).json +0 -35
  184. package/node_modules/fast-stable-stringify/results/iter/Chrome Mobile 39.0.0 (Android 5.1.1).json +0 -35
  185. package/node_modules/fast-stable-stringify/results/iter/Chrome Mobile 55.0.2883 (Android 6.0.0).json +0 -35
  186. package/node_modules/fast-stable-stringify/results/iter/Edge 14.14393.0 (Windows 10 0.0.0).json +0 -35
  187. package/node_modules/fast-stable-stringify/results/iter/Firefox 54.0.0 (Windows 7 0.0.0).json +0 -35
  188. package/node_modules/fast-stable-stringify/results/iter/IE 10.0.0 (Windows 7 0.0.0).json +0 -35
  189. package/node_modules/fast-stable-stringify/results/iter/IE 11.0.0 (Windows 7 0.0.0).json +0 -35
  190. package/node_modules/fast-stable-stringify/results/iter/IE 9.0.0 (Windows 7 0.0.0).json +0 -35
  191. package/node_modules/fast-stable-stringify/results/iter/Mobile Safari 10.0.0 (iOS 10.3.0).json +0 -35
  192. package/node_modules/fast-stable-stringify/results/iter/Mobile Safari 9.0.0 (iOS 9.2.0).json +0 -35
  193. package/node_modules/fast-stable-stringify/results/iter/Safari 10.0.1 (Mac OS X 10.12.1).json +0 -35
  194. package/node_modules/fast-stable-stringify/results/iter/Safari 9.1.2 (Mac OS X 10.11.6).json +0 -35
  195. package/node_modules/fast-stable-stringify/results/iter.md +0 -14
  196. package/node_modules/fast-stable-stringify/results/libs/Chrome 60.0.3112 (Windows 7 0.0.0).json +0 -46
  197. package/node_modules/fast-stable-stringify/results/libs/Chrome Mobile 55.0.2883 (Android 6.0.0).json +0 -46
  198. package/node_modules/fast-stable-stringify/results/libs/Edge 14.14393.0 (Windows 10 0.0.0).json +0 -46
  199. package/node_modules/fast-stable-stringify/results/libs/Firefox 54.0.0 (Windows 7 0.0.0).json +0 -46
  200. package/node_modules/fast-stable-stringify/results/libs/IE 10.0.0 (Windows 7 0.0.0).json +0 -35
  201. package/node_modules/fast-stable-stringify/results/libs/IE 11.0.0 (Windows 7 0.0.0).json +0 -35
  202. package/node_modules/fast-stable-stringify/results/libs/IE 9.0.0 (Windows 7 0.0.0).json +0 -35
  203. package/node_modules/fast-stable-stringify/results/libs/Mobile Safari 10.0.0 (iOS 10.3.0).json +0 -46
  204. package/node_modules/fast-stable-stringify/results/libs/Safari 10.0.1 (Mac OS X 10.12.1).json +0 -46
  205. package/node_modules/fast-stable-stringify/results/libs.md +0 -15
  206. package/node_modules/fast-stable-stringify/test/escape-long.js +0 -147
  207. package/node_modules/fast-stable-stringify/test/escape-short.js +0 -147
  208. package/node_modules/fast-stable-stringify/test/index.js +0 -6
  209. package/node_modules/fast-stable-stringify/test/itar-long.js +0 -52
  210. package/node_modules/fast-stable-stringify/test/itar-short.js +0 -52
  211. package/node_modules/fast-stable-stringify/test/iter.js +0 -84
  212. package/node_modules/fast-stable-stringify/test/libs.js +0 -57
  213. package/node_modules/fast-stable-stringify/test/travis.js +0 -43
  214. package/node_modules/fast-stable-stringify/test/validate.js +0 -24
  215. package/node_modules/fast-stable-stringify/util/eachRecursive.js +0 -9
  216. package/node_modules/fast-stable-stringify/util/get-git-hash-sync.js +0 -21
  217. package/node_modules/fast-stable-stringify/util/get-lib-info.js +0 -22
  218. package/node_modules/fast-stable-stringify/util/object-path.js +0 -47
  219. package/node_modules/fast-stable-stringify/v8-profile/bench.js +0 -8
  220. package/node_modules/fast-stable-stringify/v8-profile/run.sh +0 -2
  221. package/node_modules/fast-stable-stringify/zuul-local.sh +0 -2
  222. package/node_modules/hkdf/.npmignore +0 -2
  223. package/node_modules/hkdf/README.md +0 -23
  224. package/node_modules/hkdf/hkdf.py +0 -171
  225. package/node_modules/hkdf/hkdf.pyc +0 -0
  226. package/node_modules/hkdf/index.js +0 -1
  227. package/node_modules/hkdf/lib/hkdf.js +0 -55
  228. package/node_modules/hkdf/package.json +0 -55
  229. package/node_modules/hkdf/scripts/run_all_tests.sh +0 -19
  230. package/node_modules/hkdf/test/all-test.js +0 -79
  231. package/node_modules/hkdf/test.py +0 -11
  232. package/node_modules/immediate/LICENSE.txt +0 -20
  233. package/node_modules/immediate/README.md +0 -93
  234. package/node_modules/immediate/dist/immediate.js +0 -75
  235. package/node_modules/immediate/dist/immediate.min.js +0 -1
  236. package/node_modules/immediate/lib/browser.js +0 -69
  237. package/node_modules/immediate/lib/index.js +0 -73
  238. package/node_modules/immediate/package.json +0 -86
  239. package/node_modules/isarray/.npmignore +0 -1
  240. package/node_modules/isarray/.travis.yml +0 -4
  241. package/node_modules/isarray/Makefile +0 -6
  242. package/node_modules/isarray/README.md +0 -60
  243. package/node_modules/isarray/component.json +0 -19
  244. package/node_modules/isarray/index.js +0 -5
  245. package/node_modules/isarray/package.json +0 -77
  246. package/node_modules/isarray/test.js +0 -20
  247. package/node_modules/jszip/.codeclimate.yml +0 -16
  248. package/node_modules/jszip/.editorconfig +0 -8
  249. package/node_modules/jszip/.github/workflows/pr.yaml +0 -41
  250. package/node_modules/jszip/.jshintignore +0 -1
  251. package/node_modules/jszip/.jshintrc +0 -21
  252. package/node_modules/jszip/.travis.yml +0 -17
  253. package/node_modules/jszip/CHANGES.md +0 -192
  254. package/node_modules/jszip/LICENSE.markdown +0 -651
  255. package/node_modules/jszip/README.markdown +0 -33
  256. package/node_modules/jszip/dist/jszip.js +0 -11583
  257. package/node_modules/jszip/dist/jszip.min.js +0 -13
  258. package/node_modules/jszip/index.d.ts +0 -335
  259. package/node_modules/jszip/lib/base64.js +0 -106
  260. package/node_modules/jszip/lib/compressedObject.js +0 -74
  261. package/node_modules/jszip/lib/compressions.js +0 -14
  262. package/node_modules/jszip/lib/crc32.js +0 -77
  263. package/node_modules/jszip/lib/defaults.js +0 -11
  264. package/node_modules/jszip/lib/external.js +0 -19
  265. package/node_modules/jszip/lib/flate.js +0 -85
  266. package/node_modules/jszip/lib/generate/ZipFileWorker.js +0 -540
  267. package/node_modules/jszip/lib/generate/index.js +0 -57
  268. package/node_modules/jszip/lib/index.js +0 -55
  269. package/node_modules/jszip/lib/license_header.js +0 -11
  270. package/node_modules/jszip/lib/load.js +0 -88
  271. package/node_modules/jszip/lib/nodejs/NodejsStreamInputAdapter.js +0 -74
  272. package/node_modules/jszip/lib/nodejs/NodejsStreamOutputAdapter.js +0 -42
  273. package/node_modules/jszip/lib/nodejsUtils.js +0 -57
  274. package/node_modules/jszip/lib/object.js +0 -389
  275. package/node_modules/jszip/lib/readable-stream-browser.js +0 -9
  276. package/node_modules/jszip/lib/reader/ArrayReader.js +0 -57
  277. package/node_modules/jszip/lib/reader/DataReader.js +0 -116
  278. package/node_modules/jszip/lib/reader/NodeBufferReader.js +0 -19
  279. package/node_modules/jszip/lib/reader/StringReader.js +0 -38
  280. package/node_modules/jszip/lib/reader/Uint8ArrayReader.js +0 -22
  281. package/node_modules/jszip/lib/reader/readerFor.js +0 -28
  282. package/node_modules/jszip/lib/signature.js +0 -7
  283. package/node_modules/jszip/lib/stream/ConvertWorker.js +0 -26
  284. package/node_modules/jszip/lib/stream/Crc32Probe.js +0 -24
  285. package/node_modules/jszip/lib/stream/DataLengthProbe.js +0 -29
  286. package/node_modules/jszip/lib/stream/DataWorker.js +0 -116
  287. package/node_modules/jszip/lib/stream/GenericWorker.js +0 -263
  288. package/node_modules/jszip/lib/stream/StreamHelper.js +0 -212
  289. package/node_modules/jszip/lib/support.js +0 -38
  290. package/node_modules/jszip/lib/utf8.js +0 -275
  291. package/node_modules/jszip/lib/utils.js +0 -501
  292. package/node_modules/jszip/lib/zipEntries.js +0 -262
  293. package/node_modules/jszip/lib/zipEntry.js +0 -294
  294. package/node_modules/jszip/lib/zipObject.js +0 -133
  295. package/node_modules/jszip/package.json +0 -99
  296. package/node_modules/jszip/tsconfig.json +0 -101
  297. package/node_modules/jszip/vendor/FileSaver.js +0 -247
  298. package/node_modules/lie/README.md +0 -62
  299. package/node_modules/lie/dist/lie.js +0 -350
  300. package/node_modules/lie/dist/lie.min.js +0 -1
  301. package/node_modules/lie/dist/lie.polyfill.js +0 -358
  302. package/node_modules/lie/dist/lie.polyfill.min.js +0 -1
  303. package/node_modules/lie/lib/browser.js +0 -273
  304. package/node_modules/lie/lib/index.js +0 -298
  305. package/node_modules/lie/license.md +0 -7
  306. package/node_modules/lie/lie.d.ts +0 -244
  307. package/node_modules/lie/package.json +0 -98
  308. package/node_modules/lie/polyfill.js +0 -4
  309. package/node_modules/p-finally/index.js +0 -15
  310. package/node_modules/p-finally/license +0 -21
  311. package/node_modules/p-finally/package.json +0 -77
  312. package/node_modules/p-finally/readme.md +0 -47
  313. package/node_modules/p-retry/index.js +0 -52
  314. package/node_modules/p-retry/license +0 -9
  315. package/node_modules/p-retry/package.json +0 -83
  316. package/node_modules/p-retry/readme.md +0 -109
  317. package/node_modules/p-timeout/index.d.ts +0 -72
  318. package/node_modules/p-timeout/index.js +0 -57
  319. package/node_modules/p-timeout/license +0 -9
  320. package/node_modules/p-timeout/package.json +0 -80
  321. package/node_modules/p-timeout/readme.md +0 -87
  322. package/node_modules/pako/CHANGELOG.md +0 -164
  323. package/node_modules/pako/LICENSE +0 -21
  324. package/node_modules/pako/README.md +0 -191
  325. package/node_modules/pako/dist/pako.js +0 -6818
  326. package/node_modules/pako/dist/pako.min.js +0 -1
  327. package/node_modules/pako/dist/pako_deflate.js +0 -3997
  328. package/node_modules/pako/dist/pako_deflate.min.js +0 -1
  329. package/node_modules/pako/dist/pako_inflate.js +0 -3300
  330. package/node_modules/pako/dist/pako_inflate.min.js +0 -1
  331. package/node_modules/pako/index.js +0 -14
  332. package/node_modules/pako/lib/deflate.js +0 -400
  333. package/node_modules/pako/lib/inflate.js +0 -423
  334. package/node_modules/pako/lib/utils/common.js +0 -105
  335. package/node_modules/pako/lib/utils/strings.js +0 -187
  336. package/node_modules/pako/lib/zlib/README +0 -59
  337. package/node_modules/pako/lib/zlib/adler32.js +0 -51
  338. package/node_modules/pako/lib/zlib/constants.js +0 -68
  339. package/node_modules/pako/lib/zlib/crc32.js +0 -59
  340. package/node_modules/pako/lib/zlib/deflate.js +0 -1874
  341. package/node_modules/pako/lib/zlib/gzheader.js +0 -58
  342. package/node_modules/pako/lib/zlib/inffast.js +0 -345
  343. package/node_modules/pako/lib/zlib/inflate.js +0 -1556
  344. package/node_modules/pako/lib/zlib/inftrees.js +0 -343
  345. package/node_modules/pako/lib/zlib/messages.js +0 -32
  346. package/node_modules/pako/lib/zlib/trees.js +0 -1222
  347. package/node_modules/pako/lib/zlib/zstream.js +0 -47
  348. package/node_modules/pako/package.json +0 -94
  349. package/node_modules/process-nextick-args/index.js +0 -45
  350. package/node_modules/process-nextick-args/license.md +0 -19
  351. package/node_modules/process-nextick-args/package.json +0 -53
  352. package/node_modules/process-nextick-args/readme.md +0 -18
  353. package/node_modules/readable-stream/.travis.yml +0 -34
  354. package/node_modules/readable-stream/CONTRIBUTING.md +0 -38
  355. package/node_modules/readable-stream/GOVERNANCE.md +0 -136
  356. package/node_modules/readable-stream/LICENSE +0 -47
  357. package/node_modules/readable-stream/README.md +0 -58
  358. package/node_modules/readable-stream/doc/wg-meetings/2015-01-30.md +0 -60
  359. package/node_modules/readable-stream/duplex-browser.js +0 -1
  360. package/node_modules/readable-stream/duplex.js +0 -1
  361. package/node_modules/readable-stream/lib/_stream_duplex.js +0 -131
  362. package/node_modules/readable-stream/lib/_stream_passthrough.js +0 -47
  363. package/node_modules/readable-stream/lib/_stream_readable.js +0 -1019
  364. package/node_modules/readable-stream/lib/_stream_transform.js +0 -214
  365. package/node_modules/readable-stream/lib/_stream_writable.js +0 -687
  366. package/node_modules/readable-stream/lib/internal/streams/BufferList.js +0 -79
  367. package/node_modules/readable-stream/lib/internal/streams/destroy.js +0 -74
  368. package/node_modules/readable-stream/lib/internal/streams/stream-browser.js +0 -1
  369. package/node_modules/readable-stream/lib/internal/streams/stream.js +0 -1
  370. package/node_modules/readable-stream/package.json +0 -86
  371. package/node_modules/readable-stream/passthrough.js +0 -1
  372. package/node_modules/readable-stream/readable-browser.js +0 -7
  373. package/node_modules/readable-stream/readable.js +0 -19
  374. package/node_modules/readable-stream/transform.js +0 -1
  375. package/node_modules/readable-stream/writable-browser.js +0 -1
  376. package/node_modules/readable-stream/writable.js +0 -8
  377. package/node_modules/retry/.npmignore +0 -3
  378. package/node_modules/retry/.travis.yml +0 -15
  379. package/node_modules/retry/License +0 -21
  380. package/node_modules/retry/Makefile +0 -18
  381. package/node_modules/retry/README.md +0 -227
  382. package/node_modules/retry/equation.gif +0 -0
  383. package/node_modules/retry/example/dns.js +0 -31
  384. package/node_modules/retry/example/stop.js +0 -40
  385. package/node_modules/retry/index.js +0 -1
  386. package/node_modules/retry/lib/retry.js +0 -100
  387. package/node_modules/retry/lib/retry_operation.js +0 -158
  388. package/node_modules/retry/package.json +0 -67
  389. package/node_modules/retry/test/common.js +0 -10
  390. package/node_modules/retry/test/integration/test-forever.js +0 -24
  391. package/node_modules/retry/test/integration/test-retry-operation.js +0 -258
  392. package/node_modules/retry/test/integration/test-retry-wrap.js +0 -101
  393. package/node_modules/retry/test/integration/test-timeouts.js +0 -69
  394. package/node_modules/setimmediate/LICENSE.txt +0 -20
  395. package/node_modules/setimmediate/package.json +0 -77
  396. package/node_modules/setimmediate/setImmediate.js +0 -186
  397. package/node_modules/split/.npmignore +0 -3
  398. package/node_modules/split/.travis.yml +0 -3
  399. package/node_modules/split/LICENCE +0 -22
  400. package/node_modules/split/examples/pretty.js +0 -26
  401. package/node_modules/split/index.js +0 -63
  402. package/node_modules/split/package.json +0 -65
  403. package/node_modules/split/readme.markdown +0 -72
  404. package/node_modules/split/test/options.asynct.js +0 -46
  405. package/node_modules/split/test/partitioned_unicode.js +0 -34
  406. package/node_modules/split/test/split.asynct.js +0 -137
  407. package/node_modules/split/test/try_catch.asynct.js +0 -51
  408. package/node_modules/stream-shift/.travis.yml +0 -6
  409. package/node_modules/stream-shift/LICENSE +0 -21
  410. package/node_modules/stream-shift/README.md +0 -25
  411. package/node_modules/stream-shift/index.js +0 -20
  412. package/node_modules/stream-shift/package.json +0 -56
  413. package/node_modules/stream-shift/test.js +0 -48
  414. package/node_modules/ultron/LICENSE +0 -22
  415. package/node_modules/ultron/README.md +0 -113
  416. package/node_modules/ultron/index.js +0 -136
  417. package/node_modules/ultron/package.json +0 -71
  418. package/node_modules/websocket-stream/LICENSE +0 -8
  419. package/node_modules/websocket-stream/collaborators.md +0 -11
  420. package/node_modules/websocket-stream/echo-server.js +0 -51
  421. package/node_modules/websocket-stream/index.d.ts +0 -27
  422. package/node_modules/websocket-stream/index.js +0 -6
  423. package/node_modules/websocket-stream/package.json +0 -82
  424. package/node_modules/websocket-stream/readme.md +0 -148
  425. package/node_modules/websocket-stream/server.js +0 -29
  426. package/node_modules/websocket-stream/stream.js +0 -189
  427. package/node_modules/websocket-stream/test-client.js +0 -74
  428. package/node_modules/websocket-stream/test-server.js +0 -56
  429. package/node_modules/websocket-stream/test.js +0 -338
  430. package/node_modules/websocket-stream/ts-tests.ts +0 -69
  431. package/node_modules/websocket-stream/ws-fallback.js +0 -12
  432. package/node_modules/ws/LICENSE +0 -21
  433. package/node_modules/ws/README.md +0 -341
  434. package/node_modules/ws/index.js +0 -15
  435. package/node_modules/ws/lib/.DS_Store +0 -0
  436. package/node_modules/ws/lib/BufferUtil.js +0 -71
  437. package/node_modules/ws/lib/Constants.js +0 -10
  438. package/node_modules/ws/lib/ErrorCodes.js +0 -28
  439. package/node_modules/ws/lib/EventTarget.js +0 -151
  440. package/node_modules/ws/lib/Extensions.js +0 -203
  441. package/node_modules/ws/lib/PerMessageDeflate.js +0 -507
  442. package/node_modules/ws/lib/Receiver.js +0 -553
  443. package/node_modules/ws/lib/Sender.js +0 -412
  444. package/node_modules/ws/lib/Validation.js +0 -17
  445. package/node_modules/ws/lib/WebSocket.js +0 -717
  446. package/node_modules/ws/lib/WebSocketServer.js +0 -326
  447. package/node_modules/ws/package.json +0 -83
  448. package/node_modules/xhr2/CONTRIBUTING.md +0 -33
  449. package/node_modules/xhr2/Cakefile +0 -131
  450. package/node_modules/xhr2/LICENSE.txt +0 -19
  451. package/node_modules/xhr2/README.md +0 -142
  452. package/node_modules/xhr2/lib/browser.js +0 -1
  453. package/node_modules/xhr2/lib/xhr2.js +0 -1244
  454. package/node_modules/xhr2/package.json +0 -103
  455. package/node_modules/xhr2/src/000-xml_http_request_event_target.coffee +0 -89
  456. package/node_modules/xhr2/src/001-xml_http_request.coffee +0 -781
  457. package/node_modules/xhr2/src/errors.coffee +0 -31
  458. package/node_modules/xhr2/src/progress_event.coffee +0 -39
  459. package/node_modules/xhr2/src/xml_http_request_upload.coffee +0 -95
  460. package/node_modules/xhr2/test/fixtures/hello.json +0 -1
  461. package/node_modules/xhr2/test/fixtures/hello.txt +0 -1
  462. package/node_modules/xhr2/test/fixtures/xhr2.png +0 -0
  463. package/node_modules/xhr2/test/html/browser_test.html +0 -30
  464. package/node_modules/xhr2/test/src/event_target_test.coffee +0 -85
  465. package/node_modules/xhr2/test/src/events_test.coffee +0 -204
  466. package/node_modules/xhr2/test/src/headers_test.coffee +0 -168
  467. package/node_modules/xhr2/test/src/helpers/browser_mocha_runner.coffee +0 -10
  468. package/node_modules/xhr2/test/src/helpers/browser_mocha_setup.coffee +0 -1
  469. package/node_modules/xhr2/test/src/helpers/setup.coffee +0 -38
  470. package/node_modules/xhr2/test/src/helpers/xhr_server.coffee +0 -156
  471. package/node_modules/xhr2/test/src/nodejs_set_test.coffee +0 -162
  472. package/node_modules/xhr2/test/src/redirect_test.coffee +0 -57
  473. package/node_modules/xhr2/test/src/response_type_test.coffee +0 -88
  474. package/node_modules/xhr2/test/src/responseurl_test.coffee +0 -18
  475. package/node_modules/xhr2/test/src/send_test.coffee +0 -89
  476. package/node_modules/xhr2/test/src/status_test.coffee +0 -47
  477. package/node_modules/xhr2/test/src/xhr_test.coffee +0 -102
  478. package/node_modules/xtend/.jshintrc +0 -30
  479. package/node_modules/xtend/LICENSE +0 -20
  480. package/node_modules/xtend/README.md +0 -32
  481. package/node_modules/xtend/immutable.js +0 -19
  482. package/node_modules/xtend/mutable.js +0 -17
  483. package/node_modules/xtend/package.json +0 -89
  484. package/node_modules/xtend/test.js +0 -103
  485. package/node_modules/yazl/LICENSE +0 -21
  486. package/node_modules/yazl/README.md +0 -389
  487. package/node_modules/yazl/index.js +0 -749
  488. package/node_modules/yazl/package.json +0 -69
  489. package/src/commands/CorelliumAPI.js +0 -76
  490. package/src/subscriberInvite.js +0 -140
@@ -1,1210 +0,0 @@
1
- # Corellium API
2
-
3
- ## Reference
4
-
5
- Corellium API reference documentation is available [here](https://corellium.github.io/corellium-api/index.html).
6
-
7
- ## Overview
8
-
9
- ### Installation
10
- ```shell=
11
- npm install @corellium/corellium-api
12
- ```
13
-
14
- ### Usage
15
- ```javascript=
16
- const { Corellium } = require("@corellium/corellium-api");
17
- ```
18
-
19
- #### Onsite Customer Usage
20
-
21
- If you're using an on-site appliance rather than our cloud product, there may be a few things that are different. Check with your domain administrator to see if the appliance was set up to use a trusted custom certificate that you machine accepts. If it has not been, you will need to accepted the custom certificate that is generated on install by Corellium. Since this certificate will not be known to a local machine you will either need to export it from the server and trust it, or simply tell the node.js vm that you can safely ignore the certificate chain error.
22
-
23
- The easiest way to ignore the certificate is to pass the flag `NODE_TLS_REJECT_UNAUTHORIZED=0` to the scripts you are running.
24
-
25
- ```shell=
26
- mkdir test
27
- cd test
28
- npm install @corellium/corellium-api
29
- wget https://github.com/corellium/corellium-api/blob/master/examples/agent-simple.js
30
- <edit agent-simple.js for your local config>
31
- env NODE_TLS_REJECT_UNAUTHORIZED=0 node agent-simple.js
32
- ```
33
-
34
- ## class Corellium
35
-
36
- ### new Corellium(options)
37
-
38
- Sets up a new Corellium endpoint to use. Accepted options are:
39
-
40
- - `options.endpoint`: the URL of the endpoint to use
41
- - `options.username`: username to use for login
42
- - `options.password`: password for given username
43
- - `options.totpToken`: Timebased One Time Password Token for a given username
44
-
45
- Example:
46
-
47
- ```javascript=
48
- let corellium = new Corellium({
49
- endpoint: 'https://app.corellium.com',
50
- username: 'username',
51
- password: 'password',
52
- totpToken: '12345',
53
- });
54
- ```
55
-
56
- ### async login()
57
-
58
- Performs the login on the endpoint using the credentials passed through the constructor.
59
-
60
- Example:
61
-
62
- ```javascript=
63
- await corellium.login();
64
- ```
65
-
66
- ### async projects()
67
-
68
- Returns all projects from the connected endpoint as an `Array`.
69
-
70
- Example:
71
-
72
- ```javascript=
73
- let projects = await corellium.projects();
74
- let project = projects.find(project => project.name === "Demo Project");
75
- ```
76
-
77
- Line 2 shows how to pick a specific project from the returned map.
78
-
79
- ### async getProject(projectId)
80
-
81
- Returns the `Project` with the identifier `projectId` or _undefined_ if it does not exist.
82
-
83
- Example:
84
-
85
- ```javascript=
86
- let project = await corellium.getProject('b5ef6be5-71a9-4a26-a320-9be182217ac8');
87
- ```
88
-
89
- ### async projectNamed(name)
90
-
91
- Returns the `Project` with the name `name` or _undefined_ if it does not exist.
92
-
93
- Example:
94
-
95
- ```javascript=
96
- let project = await corellium.projectNamed('Default Project');
97
- ```
98
-
99
- ### async supported()
100
-
101
- Returns an `Array` with all devices that are supported by the endpoint, with their supported firmwares.
102
-
103
- Example:
104
-
105
- ```javascript=
106
- let supported = await corellium.supported();
107
- ```
108
-
109
- ## class Project
110
-
111
- **Note:** Instances of the class `Project` are supposed to be created using the `Corellium#projects()`, `Corellium#getProject()`, or `Corellium#projectNamed()` methods.
112
-
113
- ### Property: name
114
-
115
- Returns the name of the project.
116
-
117
- Example:
118
-
119
- ```javascript=
120
- let name = project.name;
121
- ```
122
-
123
- ### Property: quotas
124
-
125
- Returns the quotas of the project. Currently, `quotas`' only element is `cpus`.
126
-
127
- Example:
128
-
129
- ```javascript=
130
- // Create map of supported devices.
131
- let supported = {};
132
- (await corellium.supported()).forEach(modelInfo => {
133
- supported[modelInfo.name] = modelInfo;
134
- });
135
-
136
- // Get how many CPUs we're currently using.
137
- let cpusUsed = 0;
138
- instances.forEach(instance => {
139
- cpusUsed += supported[instance.flavor].quotas.cpus;
140
- });
141
-
142
- console.log('Used: ' + cpusUsed + '/' + project.quotas.cpus);
143
- ```
144
-
145
- ### async instances()
146
-
147
- Returns an `Array` of `Instance` objects of all virtual machine instances.
148
-
149
- Example:
150
-
151
- ```javascript=
152
- let instances = await project.instances();
153
- let instance = instances.find(instance => instance.name === 'Test-Device');
154
- ```
155
-
156
- Line 2 shows how to select a specific instance by name from the returned instances.
157
-
158
- ### async getInstance(id)
159
-
160
- Returns the instance identified by `id`.
161
-
162
- Example:
163
-
164
- ```javascript=
165
- let instance = project.getInstance('a9212122-40b0-1387-7feb-7a721916580d');
166
- ```
167
-
168
- ### async createInstance(options)
169
-
170
- Creates a new instance with the given options. The following options are supported:
171
-
172
- - `options.name`: The name of the new Instance.
173
- - `options.flavor`: The flavor of the `Instance` that is being created.
174
- - The following flavors are supported for Android:
175
- - `ranchu` (for Generic Android devices)
176
- - The following Android devices are "frames" which will change the screen size and dpi
177
- - `google-nexus-4`
178
- - `google-nexus-5`
179
- - `google-nexus-5x`
180
- - `google-nexus-6`
181
- - `google-nexus-6p`
182
- - `google-nexus-9`
183
- - `google-pixel`
184
- - `google-pixel-2`
185
- - `google-pixel-3`
186
- - `htc-one-m8`
187
- - `huawei-p8`
188
- - The following flavors are supported for iOS:
189
- - `iphone6`
190
- - `iphone6plus`
191
- - `ipodtouch6`
192
- - `ipadmini4wifi`
193
- - `iphone6s`
194
- - `iphone6splus`
195
- - `iphonese`
196
- - `iphone7`
197
- - `iphone7plus`
198
- - `iphone8`
199
- - `iphone8plus`
200
- - `iphonex`
201
- - `iphonexs`
202
- - `iphonexsmax`
203
- - `iphonexsmaxww`
204
- - `iphonexr`
205
- - `iphone11`
206
- - `iphone11pro`
207
- - `iphone11promax`
208
- - `iphonese2`
209
- - `iphone12m`
210
- - `iphone12`
211
- - `iphone12p`
212
- - `iphone12pm`
213
- - `iphone13`
214
- - `iphone13m`
215
- - `iphone13p`
216
- - `iphone13pm`
217
- - `options.os`: The software version, e.g. `14.3` for iOS, or `11.0.0` for Android
218
- - `options.patches`: The following values are supported:
219
- - `jailbroken` The instance should be jailbroken (default).
220
- - `nonjailbroken` The instance should not be jailbroken.
221
- - `corelliumd` The instance should not be jailbroken but should profile API agent.
222
- - `options.bootOptions`: Various boot options
223
- - `options.bootOptions.kernelSlide`: Change the Kernel slide value for an iOS device. When not set, the slide will default to zero. When set to an empty value, the slide will be randomized.
224
- - `options.bootOptions.udid`: Predefined Unique Device ID (UDID) for iOS device
225
- - `options.bootOptions.screen`: Change the screen metrics for Ranchu devices `XxY[:DPI]`, e.g. `720x1280:280`
226
- - `options.bootOptions.additionalTags[]`: An array of addition features to utilize for the device, valid options include
227
- - `kalloc`: Enable kalloc/kfree trace access via GDB (Enterprise only)
228
- - `gpu`: Enable cloud GPU acceleration (Extra costs incurred, cloud only)
229
- - `options.bootOptions.kernel`: Custom kernel to pass to the device on creation
230
- - `options.bootOptions.vmmio[]`: Paremeters to export a VM address space range (and IRQ & DMA functionality) over TCP to different models running on different machines or inside a different VM
231
- - `start`: start address for beginning of vMMIO range
232
- - `size`: size of the range to use for vMMIO
233
- - `irq`: system IRQs, 1-16 ranges must be specified
234
- - `port`: tcp port for vMMIO usage
235
-
236
- Example:
237
-
238
- ```javascript=
239
- // create instance
240
- let instance = await project.createInstance({
241
- 'name': 'Test Device',
242
- 'flavor': 'ranchu',
243
- 'os': '11.0.0',
244
- 'bootOptions': {
245
- 'screen': '720x1280:280',
246
- },
247
- });
248
- // wait for the instance to finish restoring
249
- await instance.finishRestore();
250
- ```
251
-
252
- ## class Instance
253
-
254
- **Note:** instances of class `Instance` are only supposed to be retrieved by `Project#instances()`, `Project#getInstance()`, or `Project#createInstance`.
255
-
256
- ### Property: name
257
-
258
- The name of the instance.
259
-
260
- Example:
261
-
262
- ```javascript=
263
- let instances = await project.instances();
264
- let instance = instances[0];
265
- console.log("Using " + instance.name);
266
- ```
267
-
268
- ### Property: state
269
-
270
- Returns the state of the `Instance`.
271
-
272
- Valid states are:
273
-
274
- - `on`: The `Instance` is running.
275
- - `off`: The `Instance` is not running.
276
- - `creating`: The `Instance` is being created.
277
- - `deleting`: The `Instance` is being deleted.
278
-
279
- Example:
280
-
281
- ```javascript=
282
- await instance.start();
283
- await instance.waitForState('on');
284
- assert.equal(instance.state, 'on');
285
- ```
286
-
287
- See also: `Instance.waitForState()`
288
-
289
- ### Property: flavor
290
-
291
- Returns the flavor of the `Instance`.
292
-
293
- Example:
294
-
295
- ```javascript=
296
- let instances = await project.instances();
297
- instances.forEach(instance => {
298
- console.log(instance.name + ': ' + instance.flavor);
299
- });
300
- ```
301
-
302
- ### async rate()
303
-
304
- Returns the cost, in microcents, for the instance in the on and off state. Instances are charged $0.25 / day for storage (off) and $0.25 per core per hour (on).
305
-
306
- Example:
307
-
308
- ```javascript=
309
- let rateInfo = await instance.rate();
310
-
311
- // dollars = rate * seconds / microcents / cents
312
- console.log(`instance on for 24 hours: $${(rateInfo.onRateMicrocents * (60 * 60 * 24) / 1000000 / 100).toFixed(2)} USD`)
313
- console.log(`instance off for 24 hours: $${(rateInfo.offRateMicrocents * (60 * 60 * 24) / 1000000 / 100).toFixed(2)} USD`)
314
- ```
315
-
316
- Output:
317
-
318
- ```text=
319
- instance on for 24 hours: $36.00 USD
320
- instance off for 24 hours: $0.25 USD
321
- ```
322
-
323
- ### async rename(name)
324
-
325
- Renames an `Instance` to `name`.
326
-
327
- Example:
328
-
329
- ```javascript=
330
- let instances = await project.instances();
331
- let instance = instances.find(instance => instance.name === 'Test-Device');
332
- await instance.rename('Demo-Device');
333
- ```
334
-
335
- ### async modifyPeripherals(peripheralData)
336
-
337
- Modify the a `PeripheralData` object for the current `Instance`. This is the peripheral/sensor
338
- data which is sent to the device hardware.
339
-
340
- Currently only supported for Android devices.
341
-
342
- Example:
343
-
344
- ```javascript=
345
- const instances = await project.instances();
346
- const instance = instances.find(instance => instance.name == 'foo');
347
- await instance.modifyPeripherals({
348
- "gpsToffs": "0.000000",
349
- "gpsLat": "37.414300",
350
- "gpsLon": "-122.077400",
351
- "gpsAlt": "45.000000",
352
- "acOnline": "1",
353
- "batteryPresent": "1",
354
- "batteryStatus": "discharging",
355
- "batteryHealth": "overheat",
356
- "batteryCapacity": "99.000000",
357
- "acceleration": "0.000000,9.810000,0.000000",
358
- "gyroscope": "0.000000,0.000000,0.000000",
359
- "magnetic": "0.000000,45.000000,0.000000",
360
- "orientation": "0.000000,0.000000,0.000000",
361
- "temperature": "25.000000",
362
- "proximity": "50.000000",
363
- "light": "20.000000",
364
- "pressure": "1013.250000",
365
- "humidity": "55.000000"
366
- }));
367
- ```
368
-
369
- ### async getPeripherals()
370
-
371
- Return a `Promise` of a `PeripheralData` object for the current `Instance`.
372
-
373
- Example:
374
-
375
- ```javascript=
376
- let peripherals = await instance.getPeripherals();
377
- console.log(peripherals);
378
- ```
379
-
380
- ### async snapshots()
381
-
382
- Returns an `Array` of `Snapshot` objects with the snapshots for the current `Instance`.
383
-
384
- Example:
385
-
386
- ```javascript=
387
- let snapshots = instance.snapshots();
388
- snapshots.forEach(snapshot => {
389
- console.log(snapshot.name, snapshot.created);
390
- });
391
- ```
392
-
393
- ### async takeSnapshot(name)
394
-
395
- Creates a snapshot named `name` of an `Instance`. Returns an instance of `Snapshot`.
396
-
397
- Example:
398
-
399
- ```javascript=
400
- await instance.takeSnapshot('before-test');
401
- ```
402
-
403
- ### async consoleLog()
404
-
405
- Returns the current console log of an `Instance`.
406
-
407
- Example:
408
-
409
- ```javascript=
410
- console.log(await instance.consoleLog());
411
- ```
412
-
413
- ### async panics()
414
-
415
- Returns recorded panics of an `Instance`.
416
-
417
- Example:
418
-
419
- ```javascript=
420
- console.log(await instance.panics());
421
- ```
422
-
423
- See also: `Event: panic`
424
-
425
- ### async clearPanics()
426
-
427
- Clears recorded panics of an `Instance`.
428
-
429
- Example:
430
-
431
- ```javascript=
432
- await instance.clearPanics();
433
- ```
434
-
435
- See also: `Event: panic`
436
-
437
- ### async agent()
438
-
439
- Returns an `Agent` instance for the `Instance`.
440
-
441
- Example:
442
-
443
- ```javascript=
444
- let agent = await instance.agent();
445
- await agent.ready();
446
- ```
447
-
448
- ### async newAgent()
449
-
450
- Creates an additional `Agent` connection to the `Instance`. This is required for agent tasks that do not actually finish, like `Agent#crashes()`.
451
-
452
- Example:
453
-
454
- ```javascript=
455
- let crashListener = await instance.newAgent();
456
- crashListener.crashes('com.corellium.demoapp', (err, crashReport) => {
457
- if (err) {
458
- console.error(err);
459
- return;
460
- }
461
- console.log(crashReport);
462
- });
463
- ```
464
-
465
- ### async console()
466
-
467
- Returns a node stream for the `Instance`'s console.
468
-
469
- Example:
470
-
471
- ```javascript=
472
- let consoleStream = await instance.console();
473
- consoleStream.pipe(process.stdout);
474
- ```
475
-
476
- ### async start()
477
-
478
- Starts an `Instance`.
479
-
480
- Example:
481
-
482
- ```javascript=
483
- await instance.start();
484
- ```
485
-
486
- ### async stop()
487
-
488
- Stops an `Instance`.
489
-
490
- Example:
491
-
492
- ```javascript=
493
- await instance.stop();
494
- ```
495
-
496
- ### async reboot()
497
-
498
- Reboots an `Instance`.
499
-
500
- Example:
501
-
502
- ```javascript=
503
- await instance.reboot();
504
- ```
505
-
506
- ### async destroy()
507
-
508
- Destroys an `Instance`.
509
-
510
- Example:
511
-
512
- ```javascript=
513
- // delete all instances of the project
514
- let instances = await project.instances();
515
- instances.forEach(instance => {
516
- instance.destroy();
517
- });
518
- ```
519
-
520
- ### async getCoreTraceThreadList()
521
-
522
- Returns array of threads in the following format:
523
-
524
- ```
525
- [
526
- { pid, kernelId, name, threads: [ { tid, kernelId }, ... ] },
527
- ...
528
- ]
529
- ```
530
-
531
- Example:
532
-
533
- ```javascript=
534
- let procList = await instance.getCoreTraceThreadList();
535
- for (let p of procList) {
536
- console.log(p.pid, p.kernelId, p.name);
537
- for (let t of p.threads) {
538
- console.log(t.tid, t.kernelId);
539
- }
540
- }
541
- ```
542
-
543
- ### async setCoreTraceFilter(pids, names, tids)
544
-
545
- Creates CoreTrace filter from array of PIDs, TIDs and process names.
546
-
547
- Example:
548
-
549
- ```javascript=
550
- await instance.setCoreTraceFilter([111, 222], ["proc_name"], [333]);
551
- ```
552
-
553
- ### async clearCoreTraceFilter()
554
-
555
- Clears CoreTrace filter.
556
-
557
- Example:
558
-
559
- ```javascript=
560
- await instance.clearCoreTraceFilter();
561
- ```
562
-
563
- ### async startCoreTrace()
564
-
565
- Starts CoreTrace capture.
566
-
567
- Example:
568
-
569
- ```javascript=
570
- await instance.startCoreTrace();
571
- ```
572
-
573
- ### async stopCoreTrace()
574
-
575
- Stops CoreTrace capture.
576
-
577
- Example:
578
-
579
- ```javascript=
580
- await instance.stopCoreTrace();
581
- ```
582
-
583
- ### async downloadCoreTraceLog()
584
-
585
- Returns captured CoreTrace data.
586
-
587
- Example:
588
-
589
- ```javascript=
590
- let trace = await instance.downloadCoreTraceLog();
591
- console.log(trace.toString());
592
- ```
593
-
594
- ### async clearCoreTraceLog()
595
-
596
- Clears captured CoreTrace data.
597
-
598
- Example:
599
-
600
- ```javascript=
601
- await instance.clearCoreTraceLog();
602
- ```
603
-
604
- ### async fridaConsole()
605
-
606
- Returns a node stream for the `Instance`'s FRIDA console.
607
-
608
- Example:
609
-
610
- ```javascript=
611
- let consoleStream = await instance.fridaConsole();
612
- consoleStream.pipe(process.stdout);
613
- ```
614
-
615
- ### async executeFridaScript(filePath)
616
-
617
- Execute installed FRIDA script with path.
618
-
619
- Example:
620
-
621
- ```javascript=
622
- await instance.executeFridaScript("/data/corellium/frida/scripts/script.js");
623
- ```
624
-
625
- ### async takeScreenshot()
626
-
627
- Instructions the `Instance` to create a screenshot of the device screen. Returns a `Buffer` with PNG data.
628
-
629
- Example:
630
-
631
- ```javascript=
632
- let screenshot = await instance.takeScreenshot();
633
- fs.writeFileSync('screenshot.png', screenshot);
634
- ```
635
-
636
- ### async finishRestore()
637
-
638
- Waits for a device to finish restoring.
639
-
640
- Example:
641
-
642
- ```javascript=
643
- await instance.finishRestore();
644
- ```
645
-
646
- See also the example at `Project#createInstance()`
647
-
648
- ### async waitForState(state)
649
-
650
- Waits for the `Instance` to switch to a specific state. For valid states, see `Property: state`.
651
-
652
- Example:
653
-
654
- ```javascript=
655
- await instance.waitForState('on');
656
- ```
657
-
658
- ### Event: change
659
-
660
- `Instance` emits a `change` event when its info changes, e.g. when the instance is renamed or its state changes.
661
-
662
- Example:
663
-
664
- ```javascript=
665
- instance.on('change', async () => {
666
- console.log(instance.id, instance.name, instance.state);
667
- });
668
- ```
669
-
670
- ### Event: panic
671
-
672
- `Instance` emits a `panic` event when a panic occurred.
673
-
674
- Example:
675
-
676
- ```javascript=
677
- instance.on('panic', async () => {
678
- console.log('Panic detected!');
679
-
680
- // get the panic log(s)
681
- console.log(await instance.panics());
682
-
683
- // Download the console log.
684
- console.log(await instance.consoleLog());
685
-
686
- // Clear the panic log.
687
- await instance.clearPanics();
688
-
689
- // Reboot the instance.
690
- await instance.reboot();
691
- });
692
- ```
693
-
694
- ## class Agent
695
-
696
- **Note:** Instances of the class `Agent` are only supposed to be retrieved with `Instance#agent()` or `Instance#newAgent()`.
697
-
698
- ### async ready()
699
-
700
- Waits for the agent to be ready to use. This essentially means that it will wait until Springboard has launched.
701
-
702
- Example:
703
-
704
- ```javascript=
705
- let agent = await instance.agent();
706
- await agent.ready();
707
- ```
708
-
709
- ### async appList()
710
-
711
- Returns an `Array` of installed apps.
712
-
713
- Example:
714
-
715
- ```javascript=
716
- let appList = await agent.appList();
717
- for (app of appList) {
718
- console.log('Found installed app ' + app['bundleID']);
719
- }
720
- ```
721
-
722
- ### async run(bundleID)
723
-
724
- Launches the app with the given `bundleID`.
725
-
726
- Example:
727
-
728
- ```javascript=
729
- await agent.run("com.corellium.demoapp");
730
- ```
731
-
732
- ### async kill(bundleID)
733
-
734
- Kills the underlying process of the app identified by `bundleID`.
735
-
736
- Example:
737
-
738
- ```javascript=
739
- await agent.kill("com.corellium.demoapp");
740
- ```
741
-
742
- ### async install(path, [progress])
743
-
744
- Installs an app, where the packaged app needs to be available on the VMs filesystem at `path`. The optional `progress` parameter expects a callback function with signature `(progress, status)`, where `progress` is the percentage as float, and `status` a string with the current status of the installation progress.
745
-
746
- To upload a file to the VM's filesystem, see `Agent#upload()`.
747
-
748
- See also `Agent#installFile()` which will handle the file upload on its own.
749
-
750
- Example:
751
-
752
- ```javascript=
753
- await agent.install('/var/tmp/temp.ipa', (progress, status) => {
754
- console.log(progress, status);
755
- });
756
- ```
757
-
758
- ### async installFile(stream, [progress])
759
-
760
- Uploads the packaged app provided through the node stream object `stream` and installs it on the VM. The optional `progress` parameter expects a callback function with signature `(progress, status)`, where `progress` is the percentage as float, and `status` a string with the current status of the installation progress.
761
-
762
- Example:
763
-
764
- ```javascript=
765
- await agent.installFile(fs.createReadStream('test.ipa'), (progress, status) => {
766
- console.log(progress, status);
767
- });
768
- ```
769
-
770
- ### async uninstall(bundleID, [progress])
771
-
772
- Uninstalls the app identified by `bundleID`. The optional `progress` parameter expects a callback function with signature `(progress, status)`, where `progress` is the percentage as float, and `status` a string with the current status of the uninstallation progress.
773
-
774
- Example:
775
-
776
- ```javascript=
777
- await agent.uninstall('com.corellium.demoapp', (progress, status) => {
778
- console.log(progress, status);
779
- });
780
- ```
781
-
782
- ### async shellExec(cmd)
783
-
784
- Executes a given command shell command on the VM.
785
-
786
- Example:
787
-
788
- ```javascript=
789
- let response = await agent.shellExec('uname');
790
- console.log('Output:' + response['output']);
791
- ```
792
-
793
- ### async tempFile()
794
-
795
- Returns a temporary random filename on the VMs filesystem that by the time of invocation of this method is guaranteed to be unique.
796
-
797
- See example at `Agent#upload()`.
798
-
799
- ### async upload(path, stream)
800
-
801
- Example:
802
-
803
- ```javascript=
804
- let tmpName = await agent.tempFile();
805
- await agent.upload(tmpName, fs.createReadStream('test.ipa'));
806
- ```
807
-
808
- ### download(path)
809
-
810
- Downloads the file at `path` from the VM's filesystem. Returns a node stream object.
811
-
812
- Example:
813
-
814
- ```javascript=
815
- let dl = agent.download('/var/tmp/test.log');
816
- dl.pipe(fs.createWriteStream('test.log'));
817
- ```
818
-
819
- ### async deleteFile(path)
820
-
821
- Deletes the file at `path` on the VM's filesystem.
822
-
823
- Example:
824
-
825
- ```javascript=
826
- await agent.deleteFile('/var/tmp/test.log');
827
- ```
828
-
829
- ### async profileList()
830
-
831
- Returns an array of Mobile Configuration profile IDs.
832
-
833
- Example:
834
-
835
- ```javascript=
836
- let profiles = await agent.profileList();
837
- for (p of profiles) {
838
- console.log('Found configuration profile: ' + p);
839
- }
840
- ```
841
-
842
- ### async installProfile(profile)
843
-
844
- Installs Mobile Configuration binary `profile` to iOS device.
845
-
846
- Example:
847
-
848
- ```javascript=
849
- var profile = fs.readFileSync(path.join(__dirname, "myprofile.mobileconfig"));
850
- await agent.installProfile(profile);
851
- ```
852
-
853
- ### async removeProfile(profileID)
854
-
855
- Deletes Mobile Configuration profile with `profileID`.
856
-
857
- Example:
858
-
859
- ```javascript=
860
- await agent.removeProfile('com.test.myprofile');
861
- ```
862
-
863
- ### async getProfile(profileID)
864
-
865
- Gets Mobile Configuration profile binary with `profileID`.
866
-
867
- Example:
868
-
869
- ```javascript=
870
- var profile = await agent.getProfile('com.test.myprofile');
871
- ```
872
-
873
- ### async listProvisioningProfiles()
874
-
875
- Returns an array of Provisioning profile descriptions.
876
-
877
- Example:
878
-
879
- ```javascript=
880
- let profiles = await agent.listProvisioningProfiles();
881
- for (p of profiles) {
882
- console.log(p['uuid']);
883
- }
884
- ```
885
-
886
- ### async installProvisioningProfile(profile, trust)
887
-
888
- Installs Provisioning profile binary `profile` makes it immediately trusted if `trust` is set.
889
-
890
- Example:
891
-
892
- ```javascript=
893
- var profile = fs.readFileSync(path.join(__dirname, "embedded.mobileprovision"));
894
- await agent.installProvisioningProfile(profile, true);
895
- ```
896
-
897
- ### async removeProvisioningProfile(profileID)
898
-
899
- Deletes Provisioning profile with `profileID`.
900
-
901
- Example:
902
-
903
- ```javascript=
904
- await agent.removeProvisioningProfile('aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa');
905
- ```
906
-
907
- ### async preApproveProvisioningProfile(certID, profileID)
908
-
909
- Approves (makes trusted) profile with `certID` and `profileID` which will be installed later in a future for example during app installation via Xcode.
910
-
911
- Example:
912
-
913
- ```javascript=
914
- await agent.preApproveProvisioningProfile('Apple Development: my@email.com (NKJDZ3DZJB)', 'aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa');
915
- ```
916
-
917
- ### crashes(bundleID, callback)
918
-
919
- Subscribes to crash events for a given app identified by `bundleID`. The callback will be called as soon as the agent found a new crash log. The signature is `(err, crashReport)` where `err` is only defined if an error occured setting up or watching for crash logs and `crashReport` will contain the full crash report data.
920
-
921
- Currently this is only available on iOS virtual devices.
922
-
923
- **Note:** Since this method blocks the communication channel of the agent to wait for crash reports, a new `Agent` connection should be created with `Instance#newAgent()`.
924
-
925
- Example:
926
-
927
- ```javascript=
928
- let crashListener = await instance.newAgent();
929
- crashListener.crashes("com.corellium.demoapp", (err, crashReport) => {
930
- if (err) {
931
- console.error(err);
932
- return;
933
- }
934
- console.log(crashReport);
935
- });
936
- ```
937
-
938
- ### async lockDevice()
939
-
940
- Locks the device software-wise.
941
-
942
- Example:
943
-
944
- ```javascript=
945
- await agent.lockDevice();
946
- ```
947
-
948
- ### async unlockDevice()
949
-
950
- Unlocks the device software-wise.
951
-
952
- Example:
953
-
954
- ```javascript=
955
- await agent.unlockDevice();
956
- ```
957
-
958
- ### async enableUIAutomation()
959
- Enables UI Automation.
960
-
961
- Example:
962
-
963
- ```javascript=
964
- await agent.enableUIAutomation();
965
- ```
966
-
967
- ### async disableUIAutomation()
968
-
969
- Disables UI Automation.
970
-
971
- Example:
972
-
973
- ```javascript=
974
- await agent.disableUIAutomation();
975
- ```
976
-
977
- ### async isSSLPinningEnabled()
978
- Check if SSL pinning is enabled.
979
- By default SSL pinning is disabled.
980
-
981
- Example:
982
-
983
- ```javascript=
984
- let enabled = await agent.isSSLPinningEnabled();
985
- if (enabled) {
986
- console.log("enabled");
987
- } else {
988
- console.log("disabled");
989
- }
990
- ```
991
-
992
- ### async enableSSLPinning()
993
- Enables SSL pinning.
994
-
995
- Example:
996
-
997
- ```javascript=
998
- await agent.enableSSLPinning();
999
- ```
1000
-
1001
- ### async disableSSLPinning()
1002
-
1003
- Disables SSL pinning.
1004
-
1005
- Example:
1006
-
1007
- ```javascript=
1008
- await agent.disableSSLPinning();
1009
- ```
1010
-
1011
- ### disconnect()
1012
-
1013
- Disconnects an `Agent` connection. This is usually only required if a new agent connection has been created and is no longer needed, for example if the `crashListener` demonstrated in the example at `Agent#crashes()` is not required anymore.
1014
-
1015
- Example:
1016
-
1017
- ```javascript=
1018
- // subscribe for crash logs
1019
- let crashListener = await instance.newAgent();
1020
- crashListener.crashes("com.corellium.demoapp", (err, crashReport) => {
1021
- if (err) {
1022
- console.error(err);
1023
- return;
1024
- }
1025
- console.log(crashReport);
1026
- });
1027
-
1028
- // wait 15 seconds
1029
- let timeoutComplete = null;
1030
- new Promise(resolve => {
1031
- timeoutComplete = resolve;
1032
- setTimeout(timeoutComplete, 15000);
1033
- });
1034
-
1035
- // crashListener not required anymore
1036
- crashListener.disconnect();
1037
- ```
1038
-
1039
- ### async runFridaPs()
1040
-
1041
- Returns processes avialable for FRIDA to attach.
1042
-
1043
- Example:
1044
-
1045
- ```javascript=
1046
- let procList = await agent.runFridaPs();
1047
- let lines = procList.output.trim().split('\n');
1048
- // Discard the first two lines.
1049
- lines.shift();
1050
- lines.shift();
1051
- for (const line of lines) {
1052
- const [pid, name] = line.trim().split(/\s+/);
1053
- console.log(pid, name);
1054
- }
1055
- ```
1056
-
1057
- ### async runFrida(pid, name)
1058
-
1059
- Attaches FRIDA to the process with `pid` and `name`.
1060
- Please note that both arguments need to be provided as they are required by the Web UI.
1061
-
1062
- Example:
1063
-
1064
- ```javascript=
1065
- await agent.runFrida(111, 'myapp');
1066
- ```
1067
-
1068
- ### async runFridaKill()
1069
-
1070
- Detaches FRIDA from current process.
1071
-
1072
- Example:
1073
-
1074
- ```javascript=
1075
- await agent.runFridaKill();
1076
- ```
1077
-
1078
- ## class NetworkMonitor
1079
-
1080
- **Note:** Instances of the class `NetworkMonitor` are only supposed to be retrieved with `Instance#networkMonitor()` or `Instance#newNetworkMonitor()`.
1081
-
1082
- ### async handleMessage(handler)
1083
-
1084
- Install handler for captured Network Monitor data
1085
-
1086
- Example:
1087
-
1088
- ```javascript=
1089
- let netmon = await instance.newNetworkMonitor();
1090
- netmon.handleMessage((message) => {
1091
- let host = message.request.headers.find(entry => entry.key === 'Host');
1092
- console.log(message.response.status, message.request.method, message.response.body.size, host.value);
1093
- });
1094
- ```
1095
-
1096
- ### async start()
1097
-
1098
- Starts capturing Network Monitor data
1099
-
1100
- Example:
1101
-
1102
- ```javascript=
1103
- let netmon = await instance.newNetworkMonitor();
1104
- netmon.start();
1105
- ```
1106
-
1107
- ### async stop()
1108
-
1109
- Stops capturing Network Monitor data
1110
-
1111
- Example:
1112
-
1113
- ```javascript=
1114
- let netmon = await instance.newNetworkMonitor();
1115
- netmon.stop();
1116
- ```
1117
-
1118
- ### async isEnabled()
1119
-
1120
- Check if Network Monitor is enabled
1121
-
1122
- Example:
1123
-
1124
- ```javascript=
1125
- let enabled = await netmon.isEnabled();
1126
- if (enabled) {
1127
- console.log("enabled");
1128
- } else {
1129
- console.log("disabled");
1130
- }
1131
- ```
1132
-
1133
- ### async clearLog()
1134
-
1135
- Clears captured Network Monitor data
1136
-
1137
- Example:
1138
-
1139
- ```javascript=
1140
- let netmon = await instance.newNetworkMonitor();
1141
- netmon.clearLog();
1142
- ```
1143
-
1144
- ## class Snapshot
1145
-
1146
- **Note:** Instances of the class `Snapshot` are only supposed to be retrieved with `Instance#snapshots()` or `Instance#takeSnapshot()`.
1147
-
1148
- ### Property: name
1149
-
1150
- Name of the snapshot.
1151
-
1152
- ### Property: created
1153
-
1154
- The time the snapshot was created.
1155
-
1156
- ### Property: fresh
1157
-
1158
- Tells wether a snapshot is fresh or not.
1159
-
1160
- A snapshot will be automatically created after the initial restore of an `Instance` in which case it is considered fresh.
1161
-
1162
- Example:
1163
-
1164
- ```javascript=
1165
- let snapshots = await instance.snapshots();
1166
- let freshSnapshot = snapshots.find(snapshot => snapshot.fresh);
1167
- await freshSnapshot.restore();
1168
- ```
1169
-
1170
- ### async rename(name)
1171
-
1172
- Renames a snapshot to `name`.
1173
-
1174
- Example:
1175
-
1176
- ```javascript=
1177
- let snapshots = await instance.snapshots();
1178
- let snapshot = snapshots.find(snapshot => snapshot.name === 'Test 1');
1179
- if (snapshot) {
1180
- await snapshot.rename('Test 1 new');
1181
- }
1182
- ```
1183
-
1184
- ### async restore()
1185
-
1186
- Restores a snapshot.
1187
-
1188
- Example:
1189
-
1190
- ```javascript=
1191
- let snapshots = await instance.snapshots();
1192
- let snapshot = snapshots.find(snapshot => snapshot.name === 'Pre-Test 1');
1193
- if (snapshot) {
1194
- await snapshot.restore();
1195
- }
1196
- ```
1197
-
1198
- ### async delete()
1199
-
1200
- Deletes a snapshot.
1201
-
1202
- Example:
1203
-
1204
- ```javascript=
1205
- let snapshots = await instance.snapshots();
1206
- snapshots.forEach(snapshot => {
1207
- console.log("Deleting snapshot " + snapshot.name)
1208
- snapshot.delete();
1209
- });
1210
- ```