fsevents 1.0.15 → 1.1.1

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.

Potentially problematic release.


This version of fsevents might be problematic. Click here for more details.

Files changed (369) hide show
  1. package/fsevents.js +3 -0
  2. package/install.js +7 -0
  3. package/lib/binding/Release/node-v48-darwin-x64/fse.node +0 -0
  4. package/node_modules/abbrev/abbrev.js +0 -1
  5. package/node_modules/abbrev/package.json +32 -21
  6. package/node_modules/ansi-regex/index.js +1 -1
  7. package/node_modules/ansi-regex/package.json +61 -42
  8. package/node_modules/ansi-regex/readme.md +10 -2
  9. package/node_modules/ansi-styles/package.json +27 -19
  10. package/node_modules/aproba/README.md +33 -3
  11. package/node_modules/aproba/index.js +71 -30
  12. package/node_modules/aproba/package.json +30 -22
  13. package/node_modules/are-we-there-yet/package.json +14 -6
  14. package/node_modules/asn1/package.json +16 -8
  15. package/node_modules/assert-plus/package.json +16 -8
  16. package/node_modules/{node-uuid/LICENSE.md → asynckit/LICENSE} +1 -1
  17. package/node_modules/asynckit/README.md +233 -0
  18. package/node_modules/asynckit/bench.js +76 -0
  19. package/node_modules/asynckit/index.js +6 -0
  20. package/node_modules/asynckit/lib/abort.js +29 -0
  21. package/node_modules/asynckit/lib/async.js +34 -0
  22. package/node_modules/asynckit/lib/defer.js +26 -0
  23. package/node_modules/asynckit/lib/iterate.js +75 -0
  24. package/node_modules/asynckit/lib/readable_asynckit.js +91 -0
  25. package/node_modules/asynckit/lib/readable_parallel.js +25 -0
  26. package/node_modules/asynckit/lib/readable_serial.js +25 -0
  27. package/node_modules/asynckit/lib/readable_serial_ordered.js +29 -0
  28. package/node_modules/asynckit/lib/state.js +37 -0
  29. package/node_modules/asynckit/lib/streamify.js +141 -0
  30. package/node_modules/asynckit/lib/terminator.js +29 -0
  31. package/node_modules/asynckit/package.json +126 -0
  32. package/node_modules/asynckit/parallel.js +43 -0
  33. package/node_modules/asynckit/serial.js +17 -0
  34. package/node_modules/asynckit/serialOrdered.js +75 -0
  35. package/node_modules/asynckit/stream.js +21 -0
  36. package/node_modules/aws-sign2/package.json +15 -7
  37. package/node_modules/aws4/README.md +9 -0
  38. package/node_modules/aws4/aws4.js +21 -7
  39. package/node_modules/aws4/package.json +62 -54
  40. package/node_modules/balanced-match/package.json +27 -19
  41. package/node_modules/bcrypt-pbkdf/README.md +39 -0
  42. package/node_modules/bcrypt-pbkdf/index.js +556 -0
  43. package/node_modules/bcrypt-pbkdf/package.json +84 -0
  44. package/node_modules/block-stream/package.json +15 -7
  45. package/node_modules/boom/package.json +14 -6
  46. package/node_modules/brace-expansion/index.js +10 -0
  47. package/node_modules/brace-expansion/package.json +35 -27
  48. package/node_modules/buffer-shims/package.json +16 -7
  49. package/node_modules/caseless/package.json +18 -10
  50. package/node_modules/chalk/package.json +30 -22
  51. package/node_modules/code-point-at/index.js +3 -4
  52. package/node_modules/code-point-at/package.json +40 -30
  53. package/node_modules/code-point-at/readme.md +2 -4
  54. package/node_modules/combined-stream/package.json +15 -7
  55. package/node_modules/commander/package.json +16 -8
  56. package/node_modules/concat-map/package.json +30 -22
  57. package/node_modules/console-control-strings/package.json +15 -7
  58. package/node_modules/core-util-is/package.json +22 -14
  59. package/node_modules/cryptiles/package.json +14 -6
  60. package/node_modules/dashdash/CHANGES.md +364 -0
  61. package/node_modules/dashdash/LICENSE.txt +24 -0
  62. package/node_modules/dashdash/etc/dashdash.bash_completion.in +4 -3
  63. package/node_modules/dashdash/node_modules/assert-plus/package.json +16 -8
  64. package/node_modules/dashdash/package.json +33 -24
  65. package/node_modules/debug/package.json +20 -12
  66. package/node_modules/deep-extend/package.json +23 -15
  67. package/node_modules/delayed-stream/package.json +15 -7
  68. package/node_modules/delegates/package.json +14 -6
  69. package/node_modules/ecc-jsbn/package.json +17 -9
  70. package/node_modules/escape-string-regexp/package.json +20 -12
  71. package/node_modules/extend/package.json +16 -8
  72. package/node_modules/extsprintf/package.json +14 -6
  73. package/node_modules/forever-agent/package.json +15 -7
  74. package/node_modules/form-data/README.md +7 -8
  75. package/node_modules/form-data/lib/browser.js +1 -1
  76. package/node_modules/form-data/lib/form_data.js +101 -72
  77. package/node_modules/form-data/lib/populate.js +6 -5
  78. package/node_modules/form-data/package.json +68 -52
  79. package/node_modules/fs.realpath/package.json +19 -11
  80. package/node_modules/fstream/package.json +15 -7
  81. package/node_modules/fstream-ignore/package.json +15 -7
  82. package/node_modules/gauge/CHANGELOG.md +24 -0
  83. package/node_modules/gauge/README.md +4 -0
  84. package/node_modules/gauge/index.js +16 -9
  85. package/node_modules/gauge/package.json +37 -29
  86. package/node_modules/generate-function/package.json +16 -8
  87. package/node_modules/generate-object-property/package.json +14 -6
  88. package/node_modules/getpass/node_modules/assert-plus/package.json +16 -8
  89. package/node_modules/getpass/package.json +16 -8
  90. package/node_modules/glob/README.md +3 -0
  91. package/node_modules/glob/common.js +6 -1
  92. package/node_modules/glob/glob.js +23 -14
  93. package/node_modules/glob/package.json +29 -21
  94. package/node_modules/glob/sync.js +29 -11
  95. package/node_modules/graceful-fs/README.md +1 -1
  96. package/node_modules/graceful-fs/graceful-fs.js +23 -14
  97. package/node_modules/graceful-fs/package.json +35 -27
  98. package/node_modules/graceful-fs/polyfills.js +99 -21
  99. package/node_modules/graceful-readlink/package.json +14 -6
  100. package/node_modules/har-validator/package.json +16 -8
  101. package/node_modules/has-ansi/package.json +29 -21
  102. package/node_modules/has-unicode/package.json +18 -10
  103. package/node_modules/hawk/package.json +18 -10
  104. package/node_modules/hoek/package.json +14 -6
  105. package/node_modules/http-signature/package.json +14 -6
  106. package/node_modules/inflight/inflight.js +22 -12
  107. package/node_modules/inflight/package.json +28 -20
  108. package/node_modules/inherits/inherits.js +7 -1
  109. package/node_modules/inherits/package.json +41 -21
  110. package/node_modules/ini/package.json +15 -7
  111. package/node_modules/is-fullwidth-code-point/package.json +27 -19
  112. package/node_modules/is-my-json-valid/index.js +10 -0
  113. package/node_modules/is-my-json-valid/package.json +36 -20
  114. package/node_modules/is-my-json-valid/test/misc.js +24 -0
  115. package/node_modules/is-property/package.json +19 -11
  116. package/node_modules/is-typedarray/package.json +16 -8
  117. package/node_modules/isarray/package.json +28 -20
  118. package/node_modules/isstream/package.json +19 -11
  119. package/node_modules/jodid25519/package.json +18 -10
  120. package/node_modules/jsbn/index.js +8 -9
  121. package/node_modules/jsbn/package.json +30 -18
  122. package/node_modules/json-schema/lib/links.js +17 -3
  123. package/node_modules/json-schema/lib/validate.js +18 -5
  124. package/node_modules/json-schema/package.json +32 -18
  125. package/node_modules/json-stringify-safe/package.json +18 -10
  126. package/node_modules/{async/LICENSE → jsonpointer/LICENSE.md} +3 -1
  127. package/node_modules/jsonpointer/README.md +17 -10
  128. package/node_modules/jsonpointer/jsonpointer.js +73 -56
  129. package/node_modules/jsonpointer/package.json +47 -26
  130. package/node_modules/jsprim/CHANGES.md +4 -0
  131. package/node_modules/jsprim/package.json +25 -17
  132. package/node_modules/mime-db/HISTORY.md +50 -0
  133. package/node_modules/mime-db/db.json +126 -2
  134. package/node_modules/mime-db/package.json +43 -30
  135. package/node_modules/mime-types/HISTORY.md +19 -0
  136. package/node_modules/mime-types/index.js +8 -8
  137. package/node_modules/mime-types/package.json +32 -19
  138. package/node_modules/minimatch/minimatch.js +19 -20
  139. package/node_modules/minimatch/package.json +25 -17
  140. package/node_modules/minimist/package.json +24 -16
  141. package/node_modules/mkdirp/package.json +21 -13
  142. package/node_modules/ms/package.json +14 -6
  143. package/node_modules/node-pre-gyp/CHANGELOG.md +20 -0
  144. package/node_modules/node-pre-gyp/README.md +574 -0
  145. package/node_modules/node-pre-gyp/appveyor.yml +19 -9
  146. package/node_modules/node-pre-gyp/lib/install.js +31 -7
  147. package/node_modules/node-pre-gyp/lib/node-pre-gyp.js +3 -1
  148. package/node_modules/node-pre-gyp/lib/util/abi_crosswalk.json +140 -0
  149. package/node_modules/node-pre-gyp/package.json +52 -48
  150. package/node_modules/nopt/package.json +19 -11
  151. package/node_modules/npmlog/CHANGELOG.md +9 -0
  152. package/node_modules/npmlog/README.md +7 -1
  153. package/node_modules/npmlog/log.js +12 -8
  154. package/node_modules/npmlog/package.json +30 -22
  155. package/node_modules/number-is-nan/package.json +39 -30
  156. package/node_modules/number-is-nan/readme.md +1 -3
  157. package/node_modules/oauth-sign/package.json +15 -7
  158. package/node_modules/object-assign/index.js +11 -4
  159. package/node_modules/object-assign/package.json +42 -30
  160. package/node_modules/object-assign/readme.md +8 -3
  161. package/node_modules/once/README.md +28 -0
  162. package/node_modules/once/once.js +21 -0
  163. package/node_modules/once/package.json +31 -20
  164. package/node_modules/path-is-absolute/index.js +5 -5
  165. package/node_modules/path-is-absolute/package.json +45 -31
  166. package/node_modules/path-is-absolute/readme.md +19 -11
  167. package/node_modules/pinkie/package.json +18 -10
  168. package/node_modules/pinkie-promise/package.json +18 -10
  169. package/node_modules/process-nextick-args/package.json +16 -8
  170. package/node_modules/punycode/LICENSE-MIT.txt +20 -0
  171. package/node_modules/punycode/README.md +176 -0
  172. package/node_modules/punycode/package.json +127 -0
  173. package/node_modules/punycode/punycode.js +533 -0
  174. package/node_modules/qs/.eslintrc +15 -15
  175. package/node_modules/qs/CHANGELOG.md +36 -0
  176. package/node_modules/qs/README.md +431 -0
  177. package/node_modules/qs/dist/qs.js +167 -67
  178. package/node_modules/qs/lib/formats.js +18 -0
  179. package/node_modules/qs/lib/index.js +6 -4
  180. package/node_modules/qs/lib/parse.js +31 -32
  181. package/node_modules/qs/lib/stringify.js +83 -20
  182. package/node_modules/qs/lib/utils.js +23 -7
  183. package/node_modules/qs/package.json +40 -30
  184. package/node_modules/qs/test/.eslintrc +10 -0
  185. package/node_modules/qs/test/index.js +2 -0
  186. package/node_modules/qs/test/parse.js +108 -47
  187. package/node_modules/qs/test/stringify.js +261 -28
  188. package/node_modules/qs/test/utils.js +13 -0
  189. package/node_modules/rc/node_modules/minimist/package.json +24 -16
  190. package/node_modules/rc/package.json +35 -23
  191. package/node_modules/readable-stream/.npmignore +1 -0
  192. package/node_modules/readable-stream/.travis.yml +2 -7
  193. package/node_modules/readable-stream/README.md +6 -2
  194. package/node_modules/readable-stream/lib/_stream_readable.js +158 -110
  195. package/node_modules/readable-stream/lib/_stream_transform.js +7 -5
  196. package/node_modules/readable-stream/lib/_stream_writable.js +35 -7
  197. package/node_modules/readable-stream/lib/internal/streams/BufferList.js +64 -0
  198. package/node_modules/readable-stream/package.json +34 -26
  199. package/node_modules/request/CHANGELOG.md +49 -18
  200. package/node_modules/request/README.md +3 -2
  201. package/node_modules/request/index.js +2 -3
  202. package/node_modules/request/lib/auth.js +1 -1
  203. package/node_modules/request/lib/helpers.js +4 -13
  204. package/node_modules/request/lib/multipart.js +1 -1
  205. package/node_modules/request/lib/oauth.js +1 -1
  206. package/node_modules/request/lib/redirect.js +5 -1
  207. package/node_modules/request/package.json +50 -31
  208. package/node_modules/request/request.js +84 -43
  209. package/node_modules/rimraf/package.json +28 -20
  210. package/node_modules/rimraf/rimraf.js +2 -2
  211. package/node_modules/semver/README.md +4 -0
  212. package/node_modules/semver/package.json +27 -19
  213. package/node_modules/semver/semver.js +14 -5
  214. package/node_modules/set-blocking/package.json +21 -13
  215. package/node_modules/signal-exit/CHANGELOG.md +10 -0
  216. package/node_modules/signal-exit/LICENSE.txt +2 -0
  217. package/node_modules/signal-exit/index.js +9 -0
  218. package/node_modules/signal-exit/package.json +32 -24
  219. package/node_modules/signal-exit/signals.js +5 -4
  220. package/node_modules/sntp/package.json +16 -8
  221. package/node_modules/sshpk/README.md +214 -3
  222. package/node_modules/sshpk/bin/sshpk-conv +6 -0
  223. package/node_modules/sshpk/lib/certificate.js +291 -0
  224. package/node_modules/sshpk/lib/errors.js +14 -1
  225. package/node_modules/sshpk/lib/fingerprint.js +28 -7
  226. package/node_modules/sshpk/lib/formats/openssh-cert.js +289 -0
  227. package/node_modules/sshpk/lib/formats/pem.js +2 -2
  228. package/node_modules/sshpk/lib/formats/pkcs8.js +2 -7
  229. package/node_modules/sshpk/lib/formats/ssh-private.js +140 -17
  230. package/node_modules/sshpk/lib/formats/x509-pem.js +77 -0
  231. package/node_modules/sshpk/lib/formats/x509.js +484 -0
  232. package/node_modules/sshpk/lib/identity.js +277 -0
  233. package/node_modules/sshpk/lib/index.js +13 -1
  234. package/node_modules/sshpk/lib/key.js +1 -0
  235. package/node_modules/sshpk/lib/signature.js +14 -6
  236. package/node_modules/sshpk/lib/ssh-buffer.js +24 -0
  237. package/node_modules/sshpk/lib/utils.js +43 -1
  238. package/node_modules/sshpk/node_modules/assert-plus/package.json +16 -8
  239. package/node_modules/sshpk/package.json +32 -22
  240. package/node_modules/string-width/index.js +5 -0
  241. package/node_modules/string-width/package.json +49 -36
  242. package/node_modules/string-width/readme.md +4 -3
  243. package/node_modules/string_decoder/package.json +19 -11
  244. package/node_modules/stringstream/package.json +18 -10
  245. package/node_modules/strip-ansi/package.json +29 -21
  246. package/node_modules/strip-json-comments/index.js +70 -0
  247. package/node_modules/strip-json-comments/package.json +49 -43
  248. package/node_modules/strip-json-comments/readme.md +12 -28
  249. package/node_modules/supports-color/package.json +26 -18
  250. package/node_modules/tar/package.json +19 -11
  251. package/node_modules/tar-pack/README.md +4 -1
  252. package/node_modules/tar-pack/index.js +17 -12
  253. package/node_modules/tar-pack/node_modules/once/LICENSE +15 -0
  254. package/node_modules/tar-pack/node_modules/once/README.md +51 -0
  255. package/node_modules/tar-pack/node_modules/once/once.js +21 -0
  256. package/node_modules/tar-pack/node_modules/once/package.json +96 -0
  257. package/node_modules/tar-pack/node_modules/readable-stream/.npmignore +8 -0
  258. package/node_modules/{bl → tar-pack}/node_modules/readable-stream/.travis.yml +4 -7
  259. package/node_modules/{bl → tar-pack}/node_modules/readable-stream/LICENSE +0 -0
  260. package/node_modules/{bl → tar-pack}/node_modules/readable-stream/README.md +2 -2
  261. package/node_modules/tar-pack/node_modules/readable-stream/doc/stream.md +2015 -0
  262. package/node_modules/{bl → tar-pack}/node_modules/readable-stream/doc/wg-meetings/2015-01-30.md +0 -0
  263. package/node_modules/{bl → tar-pack}/node_modules/readable-stream/duplex.js +0 -0
  264. package/node_modules/{bl → tar-pack}/node_modules/readable-stream/lib/_stream_duplex.js +0 -0
  265. package/node_modules/{bl → tar-pack}/node_modules/readable-stream/lib/_stream_passthrough.js +0 -0
  266. package/node_modules/{bl → tar-pack}/node_modules/readable-stream/lib/_stream_readable.js +164 -107
  267. package/node_modules/{bl → tar-pack}/node_modules/readable-stream/lib/_stream_transform.js +3 -3
  268. package/node_modules/{bl → tar-pack}/node_modules/readable-stream/lib/_stream_writable.js +25 -15
  269. package/node_modules/tar-pack/node_modules/readable-stream/lib/internal/streams/BufferList.js +64 -0
  270. package/node_modules/{bl → tar-pack}/node_modules/readable-stream/package.json +50 -30
  271. package/node_modules/{bl → tar-pack}/node_modules/readable-stream/passthrough.js +0 -0
  272. package/node_modules/{bl → tar-pack}/node_modules/readable-stream/readable.js +4 -0
  273. package/node_modules/{bl → tar-pack}/node_modules/readable-stream/transform.js +0 -0
  274. package/node_modules/{bl → tar-pack}/node_modules/readable-stream/writable.js +0 -0
  275. package/node_modules/tar-pack/package.json +39 -22
  276. package/node_modules/tar-pack/test/index.js +43 -1
  277. package/node_modules/tough-cookie/README.md +17 -3
  278. package/node_modules/tough-cookie/lib/cookie.js +6 -12
  279. package/node_modules/tough-cookie/package.json +50 -35
  280. package/node_modules/tunnel-agent/package.json +15 -7
  281. package/node_modules/tweetnacl/AUTHORS.md +28 -0
  282. package/node_modules/tweetnacl/CHANGELOG.md +93 -0
  283. package/node_modules/tweetnacl/LICENSE +24 -0
  284. package/node_modules/tweetnacl/PULL_REQUEST_TEMPLATE.md +20 -0
  285. package/node_modules/tweetnacl/README.md +57 -61
  286. package/node_modules/tweetnacl/nacl-fast.js +22 -52
  287. package/node_modules/tweetnacl/nacl-fast.min.js +2 -2
  288. package/node_modules/tweetnacl/nacl.d.ts +98 -0
  289. package/node_modules/tweetnacl/nacl.js +21 -51
  290. package/node_modules/tweetnacl/nacl.min.js +1 -1
  291. package/node_modules/tweetnacl/package.json +47 -46
  292. package/node_modules/uid-number/package.json +15 -7
  293. package/node_modules/util-deprecate/package.json +21 -13
  294. package/node_modules/uuid/.npmignore +8 -0
  295. package/node_modules/uuid/.travis.yml +5 -0
  296. package/node_modules/uuid/AUTHORS +5 -0
  297. package/node_modules/uuid/HISTORY.md +28 -0
  298. package/node_modules/uuid/LICENSE.md +21 -0
  299. package/node_modules/uuid/README.md +132 -0
  300. package/node_modules/{node-uuid → uuid}/bin/uuid +0 -0
  301. package/node_modules/uuid/index.js +8 -0
  302. package/node_modules/uuid/lib/bytesToUuid.js +23 -0
  303. package/node_modules/uuid/lib/rng-browser.js +33 -0
  304. package/node_modules/uuid/lib/rng.js +10 -0
  305. package/node_modules/uuid/package.json +122 -0
  306. package/node_modules/uuid/test/mocha.opts +3 -0
  307. package/node_modules/uuid/test/test.js +96 -0
  308. package/node_modules/uuid/v1.js +103 -0
  309. package/node_modules/uuid/v4.js +29 -0
  310. package/node_modules/verror/package.json +14 -6
  311. package/node_modules/wide-align/package.json +19 -11
  312. package/node_modules/wrappy/package.json +17 -8
  313. package/node_modules/xtend/package.json +29 -21
  314. package/package.json +2 -2
  315. package/node_modules/async/CHANGELOG.md +0 -125
  316. package/node_modules/async/README.md +0 -1877
  317. package/node_modules/async/dist/async.js +0 -1265
  318. package/node_modules/async/dist/async.min.js +0 -2
  319. package/node_modules/async/lib/async.js +0 -1265
  320. package/node_modules/async/package.json +0 -149
  321. package/node_modules/bl/.jshintrc +0 -59
  322. package/node_modules/bl/.npmignore +0 -1
  323. package/node_modules/bl/.travis.yml +0 -13
  324. package/node_modules/bl/LICENSE.md +0 -13
  325. package/node_modules/bl/README.md +0 -200
  326. package/node_modules/bl/bl.js +0 -243
  327. package/node_modules/bl/node_modules/readable-stream/.npmignore +0 -5
  328. package/node_modules/bl/node_modules/readable-stream/.zuul.yml +0 -1
  329. package/node_modules/bl/node_modules/readable-stream/doc/stream.markdown +0 -1760
  330. package/node_modules/bl/package.json +0 -96
  331. package/node_modules/bl/test/test.js +0 -640
  332. package/node_modules/form-data/.dockerignore +0 -7
  333. package/node_modules/form-data/.editorconfig +0 -10
  334. package/node_modules/form-data/.eslintignore +0 -1
  335. package/node_modules/form-data/.eslintrc +0 -64
  336. package/node_modules/form-data/wercker.yml +0 -36
  337. package/node_modules/gauge/CHANGELOG.md~ +0 -123
  338. package/node_modules/gauge/README.md~ +0 -393
  339. package/node_modules/has-color/index.js +0 -32
  340. package/node_modules/has-color/package.json +0 -97
  341. package/node_modules/has-color/readme.md +0 -30
  342. package/node_modules/inherits/test.js +0 -25
  343. package/node_modules/jsonpointer/.travis.yml +0 -10
  344. package/node_modules/jsonpointer/test.js +0 -98
  345. package/node_modules/node-uuid/.npmignore +0 -4
  346. package/node_modules/node-uuid/README.md +0 -254
  347. package/node_modules/node-uuid/benchmark/README.md +0 -53
  348. package/node_modules/node-uuid/benchmark/bench.gnu +0 -174
  349. package/node_modules/node-uuid/benchmark/bench.sh +0 -34
  350. package/node_modules/node-uuid/benchmark/benchmark-native.c +0 -34
  351. package/node_modules/node-uuid/benchmark/benchmark.js +0 -84
  352. package/node_modules/node-uuid/bower.json +0 -23
  353. package/node_modules/node-uuid/component.json +0 -25
  354. package/node_modules/node-uuid/package.json +0 -105
  355. package/node_modules/node-uuid/test/compare_v1.js +0 -63
  356. package/node_modules/node-uuid/test/test.html +0 -17
  357. package/node_modules/node-uuid/test/test.js +0 -231
  358. package/node_modules/node-uuid/uuid.js +0 -272
  359. package/node_modules/npmlog/CHANGELOG.md~ +0 -31
  360. package/node_modules/qs/.jscs.json +0 -176
  361. package/node_modules/qs/CONTRIBUTING.md +0 -1
  362. package/node_modules/readable-stream/doc/stream.md +0 -1772
  363. package/node_modules/request/.eslintrc +0 -45
  364. package/node_modules/request/.npmignore +0 -6
  365. package/node_modules/request/.travis.yml +0 -21
  366. package/node_modules/request/CONTRIBUTING.md +0 -81
  367. package/node_modules/request/codecov.yml +0 -2
  368. package/node_modules/strip-json-comments/cli.js +0 -41
  369. package/node_modules/strip-json-comments/strip-json-comments.js +0 -73
@@ -0,0 +1,277 @@
1
+ // Copyright 2016 Joyent, Inc.
2
+
3
+ module.exports = Identity;
4
+
5
+ var assert = require('assert-plus');
6
+ var algs = require('./algs');
7
+ var crypto = require('crypto');
8
+ var Fingerprint = require('./fingerprint');
9
+ var Signature = require('./signature');
10
+ var errs = require('./errors');
11
+ var util = require('util');
12
+ var utils = require('./utils');
13
+ var asn1 = require('asn1');
14
+
15
+ /*JSSTYLED*/
16
+ var DNS_NAME_RE = /^([*]|[a-z0-9][a-z0-9\-]{0,62})(?:\.([*]|[a-z0-9][a-z0-9\-]{0,62}))*$/i;
17
+
18
+ var oids = {};
19
+ oids.cn = '2.5.4.3';
20
+ oids.o = '2.5.4.10';
21
+ oids.ou = '2.5.4.11';
22
+ oids.l = '2.5.4.7';
23
+ oids.s = '2.5.4.8';
24
+ oids.c = '2.5.4.6';
25
+ oids.sn = '2.5.4.4';
26
+ oids.dc = '0.9.2342.19200300.100.1.25';
27
+ oids.uid = '0.9.2342.19200300.100.1.1';
28
+ oids.mail = '0.9.2342.19200300.100.1.3';
29
+
30
+ var unoids = {};
31
+ Object.keys(oids).forEach(function (k) {
32
+ unoids[oids[k]] = k;
33
+ });
34
+
35
+ function Identity(opts) {
36
+ var self = this;
37
+ assert.object(opts, 'options');
38
+ assert.arrayOfObject(opts.components, 'options.components');
39
+ this.components = opts.components;
40
+ this.componentLookup = {};
41
+ this.components.forEach(function (c) {
42
+ if (c.name && !c.oid)
43
+ c.oid = oids[c.name];
44
+ if (c.oid && !c.name)
45
+ c.name = unoids[c.oid];
46
+ if (self.componentLookup[c.name] === undefined)
47
+ self.componentLookup[c.name] = [];
48
+ self.componentLookup[c.name].push(c);
49
+ });
50
+ if (this.componentLookup.cn && this.componentLookup.cn.length > 0) {
51
+ this.cn = this.componentLookup.cn[0].value;
52
+ }
53
+ assert.optionalString(opts.type, 'options.type');
54
+ if (opts.type === undefined) {
55
+ if (this.components.length === 1 &&
56
+ this.componentLookup.cn &&
57
+ this.componentLookup.cn.length === 1 &&
58
+ this.componentLookup.cn[0].value.match(DNS_NAME_RE)) {
59
+ this.type = 'host';
60
+ this.hostname = this.componentLookup.cn[0].value;
61
+
62
+ } else if (this.componentLookup.dc &&
63
+ this.components.length === this.componentLookup.dc.length) {
64
+ this.type = 'host';
65
+ this.hostname = this.componentLookup.dc.map(
66
+ function (c) {
67
+ return (c.value);
68
+ }).join('.');
69
+
70
+ } else if (this.componentLookup.uid &&
71
+ this.components.length ===
72
+ this.componentLookup.uid.length) {
73
+ this.type = 'user';
74
+ this.uid = this.componentLookup.uid[0].value;
75
+
76
+ } else if (this.componentLookup.cn &&
77
+ this.componentLookup.cn.length === 1 &&
78
+ this.componentLookup.cn[0].value.match(DNS_NAME_RE)) {
79
+ this.type = 'host';
80
+ this.hostname = this.componentLookup.cn[0].value;
81
+
82
+ } else if (this.componentLookup.uid &&
83
+ this.componentLookup.uid.length === 1) {
84
+ this.type = 'user';
85
+ this.uid = this.componentLookup.uid[0].value;
86
+
87
+ } else if (this.componentLookup.mail &&
88
+ this.componentLookup.mail.length === 1) {
89
+ this.type = 'email';
90
+ this.email = this.componentLookup.mail[0].value;
91
+
92
+ } else if (this.componentLookup.cn &&
93
+ this.componentLookup.cn.length === 1) {
94
+ this.type = 'user';
95
+ this.uid = this.componentLookup.cn[0].value;
96
+
97
+ } else {
98
+ this.type = 'unknown';
99
+ }
100
+ } else {
101
+ this.type = opts.type;
102
+ if (this.type === 'host')
103
+ this.hostname = opts.hostname;
104
+ else if (this.type === 'user')
105
+ this.uid = opts.uid;
106
+ else if (this.type === 'email')
107
+ this.email = opts.email;
108
+ else
109
+ throw (new Error('Unknown type ' + this.type));
110
+ }
111
+ }
112
+
113
+ Identity.prototype.toString = function () {
114
+ return (this.components.map(function (c) {
115
+ return (c.name.toUpperCase() + '=' + c.value);
116
+ }).join(', '));
117
+ };
118
+
119
+ /*
120
+ * These are from X.680 -- PrintableString allowed chars are in section 37.4
121
+ * table 8. Spec for IA5Strings is "1,6 + SPACE + DEL" where 1 refers to
122
+ * ISO IR #001 (standard ASCII control characters) and 6 refers to ISO IR #006
123
+ * (the basic ASCII character set).
124
+ */
125
+ /* JSSTYLED */
126
+ var NOT_PRINTABLE = /[^a-zA-Z0-9 '(),+.\/:=?-]/;
127
+ /* JSSTYLED */
128
+ var NOT_IA5 = /[^\x00-\x7f]/;
129
+
130
+ Identity.prototype.toAsn1 = function (der, tag) {
131
+ der.startSequence(tag);
132
+ this.components.forEach(function (c) {
133
+ der.startSequence(asn1.Ber.Constructor | asn1.Ber.Set);
134
+ der.startSequence();
135
+ der.writeOID(c.oid);
136
+ /*
137
+ * If we fit in a PrintableString, use that. Otherwise use an
138
+ * IA5String or UTF8String.
139
+ */
140
+ if (c.value.match(NOT_IA5)) {
141
+ var v = new Buffer(c.value, 'utf8');
142
+ der.writeBuffer(v, asn1.Ber.Utf8String);
143
+ } else if (c.value.match(NOT_PRINTABLE)) {
144
+ der.writeString(c.value, asn1.Ber.IA5String);
145
+ } else {
146
+ der.writeString(c.value, asn1.Ber.PrintableString);
147
+ }
148
+ der.endSequence();
149
+ der.endSequence();
150
+ });
151
+ der.endSequence();
152
+ };
153
+
154
+ function globMatch(a, b) {
155
+ if (a === '**' || b === '**')
156
+ return (true);
157
+ var aParts = a.split('.');
158
+ var bParts = b.split('.');
159
+ if (aParts.length !== bParts.length)
160
+ return (false);
161
+ for (var i = 0; i < aParts.length; ++i) {
162
+ if (aParts[i] === '*' || bParts[i] === '*')
163
+ continue;
164
+ if (aParts[i] !== bParts[i])
165
+ return (false);
166
+ }
167
+ return (true);
168
+ }
169
+
170
+ Identity.prototype.equals = function (other) {
171
+ if (!Identity.isIdentity(other, [1, 0]))
172
+ return (false);
173
+ if (other.components.length !== this.components.length)
174
+ return (false);
175
+ for (var i = 0; i < this.components.length; ++i) {
176
+ if (this.components[i].oid !== other.components[i].oid)
177
+ return (false);
178
+ if (!globMatch(this.components[i].value,
179
+ other.components[i].value)) {
180
+ return (false);
181
+ }
182
+ }
183
+ return (true);
184
+ };
185
+
186
+ Identity.forHost = function (hostname) {
187
+ assert.string(hostname, 'hostname');
188
+ return (new Identity({
189
+ type: 'host',
190
+ hostname: hostname,
191
+ components: [ { name: 'cn', value: hostname } ]
192
+ }));
193
+ };
194
+
195
+ Identity.forUser = function (uid) {
196
+ assert.string(uid, 'uid');
197
+ return (new Identity({
198
+ type: 'user',
199
+ uid: uid,
200
+ components: [ { name: 'uid', value: uid } ]
201
+ }));
202
+ };
203
+
204
+ Identity.forEmail = function (email) {
205
+ assert.string(email, 'email');
206
+ return (new Identity({
207
+ type: 'email',
208
+ email: email,
209
+ components: [ { name: 'mail', value: email } ]
210
+ }));
211
+ };
212
+
213
+ Identity.parseDN = function (dn) {
214
+ assert.string(dn, 'dn');
215
+ var parts = dn.split(',');
216
+ var cmps = parts.map(function (c) {
217
+ c = c.trim();
218
+ var eqPos = c.indexOf('=');
219
+ var name = c.slice(0, eqPos).toLowerCase();
220
+ var value = c.slice(eqPos + 1);
221
+ return ({ name: name, value: value });
222
+ });
223
+ return (new Identity({ components: cmps }));
224
+ };
225
+
226
+ Identity.parseAsn1 = function (der, top) {
227
+ var components = [];
228
+ der.readSequence(top);
229
+ var end = der.offset + der.length;
230
+ while (der.offset < end) {
231
+ der.readSequence(asn1.Ber.Constructor | asn1.Ber.Set);
232
+ var after = der.offset + der.length;
233
+ der.readSequence();
234
+ var oid = der.readOID();
235
+ var type = der.peek();
236
+ var value;
237
+ switch (type) {
238
+ case asn1.Ber.PrintableString:
239
+ case asn1.Ber.IA5String:
240
+ case asn1.Ber.OctetString:
241
+ case asn1.Ber.T61String:
242
+ value = der.readString(type);
243
+ break;
244
+ case asn1.Ber.Utf8String:
245
+ value = der.readString(type, true);
246
+ value = value.toString('utf8');
247
+ break;
248
+ case asn1.Ber.CharacterString:
249
+ case asn1.Ber.BMPString:
250
+ value = der.readString(type, true);
251
+ value = value.toString('utf16le');
252
+ break;
253
+ default:
254
+ throw (new Error('Unknown asn1 type ' + type));
255
+ }
256
+ components.push({ oid: oid, value: value });
257
+ der._offset = after;
258
+ }
259
+ der._offset = end;
260
+ return (new Identity({
261
+ components: components
262
+ }));
263
+ };
264
+
265
+ Identity.isIdentity = function (obj, ver) {
266
+ return (utils.isCompatible(obj, Identity, ver));
267
+ };
268
+
269
+ /*
270
+ * API versions for Identity:
271
+ * [1,0] -- initial ver
272
+ */
273
+ Identity.prototype._sshpkApiVersion = [1, 0];
274
+
275
+ Identity._oldVersionDetect = function (obj) {
276
+ return ([1, 0]);
277
+ };
@@ -4,6 +4,8 @@ var Key = require('./key');
4
4
  var Fingerprint = require('./fingerprint');
5
5
  var Signature = require('./signature');
6
6
  var PrivateKey = require('./private-key');
7
+ var Certificate = require('./certificate');
8
+ var Identity = require('./identity');
7
9
  var errs = require('./errors');
8
10
 
9
11
  module.exports = {
@@ -16,11 +18,21 @@ module.exports = {
16
18
  parseSignature: Signature.parse,
17
19
  PrivateKey: PrivateKey,
18
20
  parsePrivateKey: PrivateKey.parse,
21
+ Certificate: Certificate,
22
+ parseCertificate: Certificate.parse,
23
+ createSelfSignedCertificate: Certificate.createSelfSigned,
24
+ createCertificate: Certificate.create,
25
+ Identity: Identity,
26
+ identityFromDN: Identity.parseDN,
27
+ identityForHost: Identity.forHost,
28
+ identityForUser: Identity.forUser,
29
+ identityForEmail: Identity.forEmail,
19
30
 
20
31
  /* errors */
21
32
  FingerprintFormatError: errs.FingerprintFormatError,
22
33
  InvalidAlgorithmError: errs.InvalidAlgorithmError,
23
34
  KeyParseError: errs.KeyParseError,
24
35
  SignatureParseError: errs.SignatureParseError,
25
- KeyEncryptedError: errs.KeyEncryptedError
36
+ KeyEncryptedError: errs.KeyEncryptedError,
37
+ CertificateParseError: errs.CertificateParseError
26
38
  };
@@ -117,6 +117,7 @@ Key.prototype.fingerprint = function (algo) {
117
117
  algo = 'sha256';
118
118
  assert.string(algo, 'algorithm');
119
119
  var opts = {
120
+ type: 'key',
120
121
  hash: this.hash(algo),
121
122
  algorithm: algo
122
123
  };
@@ -65,23 +65,31 @@ Signature.prototype.toBuffer = function (format) {
65
65
  buf = new SSHBuffer({});
66
66
  buf.writeString('ssh-dss');
67
67
  r = this.part.r.data;
68
- if (r[0] === 0x00)
68
+ if (r.length > 20 && r[0] === 0x00)
69
69
  r = r.slice(1);
70
70
  s = this.part.s.data;
71
+ if (s.length > 20 && s[0] === 0x00)
72
+ s = s.slice(1);
73
+ if ((this.hashAlgorithm &&
74
+ this.hashAlgorithm !== 'sha1') ||
75
+ r.length + s.length !== 40) {
76
+ throw (new Error('OpenSSH only supports ' +
77
+ 'DSA signatures with SHA1 hash'));
78
+ }
71
79
  buf.writeBuffer(Buffer.concat([r, s]));
72
80
  return (buf.toBuffer());
73
81
  } else if (format === 'ssh' && this.type === 'ecdsa') {
74
82
  var inner = new SSHBuffer({});
75
- r = this.part.r;
76
- if (r[0] === 0x00)
77
- r = r.slice(1);
78
- inner.writePart(r);
83
+ r = this.part.r.data;
84
+ inner.writeBuffer(r);
79
85
  inner.writePart(this.part.s);
80
86
 
81
87
  buf = new SSHBuffer({});
82
88
  /* XXX: find a more proper way to do this? */
83
89
  var curve;
84
- var sz = this.part.r.data.length * 8;
90
+ if (r[0] === 0x00)
91
+ r = r.slice(1);
92
+ var sz = r.length * 8;
85
93
  if (sz === 256)
86
94
  curve = 'nistp256';
87
95
  else if (sz === 384)
@@ -73,6 +73,14 @@ SSHBuffer.prototype.readInt = function () {
73
73
  return (v);
74
74
  };
75
75
 
76
+ SSHBuffer.prototype.readInt64 = function () {
77
+ assert.ok(this._offset + 8 < this._buffer.length,
78
+ 'buffer not long enough to read Int64');
79
+ var v = this._buffer.slice(this._offset, this._offset + 8);
80
+ this._offset += 8;
81
+ return (v);
82
+ };
83
+
76
84
  SSHBuffer.prototype.readChar = function () {
77
85
  var v = this._buffer[this._offset++];
78
86
  return (v);
@@ -106,6 +114,22 @@ SSHBuffer.prototype.writeInt = function (v) {
106
114
  this._offset += 4;
107
115
  };
108
116
 
117
+ SSHBuffer.prototype.writeInt64 = function (v) {
118
+ assert.buffer(v, 'value');
119
+ if (v.length > 8) {
120
+ var lead = v.slice(0, v.length - 8);
121
+ for (var i = 0; i < lead.length; ++i) {
122
+ assert.strictEqual(lead[i], 0,
123
+ 'must fit in 64 bits of precision');
124
+ }
125
+ v = v.slice(v.length - 8, v.length);
126
+ }
127
+ while (this._offset + 8 > this._size)
128
+ this.expand();
129
+ v.copy(this._buffer, this._offset);
130
+ this._offset += 8;
131
+ };
132
+
109
133
  SSHBuffer.prototype.writeChar = function (v) {
110
134
  while (this._offset + 1 > this._size)
111
135
  this.expand();
@@ -9,7 +9,8 @@ module.exports = {
9
9
  countZeros: countZeros,
10
10
  assertCompatible: assertCompatible,
11
11
  isCompatible: isCompatible,
12
- opensslKeyDeriv: opensslKeyDeriv
12
+ opensslKeyDeriv: opensslKeyDeriv,
13
+ opensshCipherInfo: opensshCipherInfo
13
14
  };
14
15
 
15
16
  var assert = require('assert-plus');
@@ -244,3 +245,44 @@ function addRSAMissing(key) {
244
245
  key.parts.push(key.part.dmodq);
245
246
  }
246
247
  }
248
+
249
+ function opensshCipherInfo(cipher) {
250
+ var inf = {};
251
+ switch (cipher) {
252
+ case '3des-cbc':
253
+ inf.keySize = 24;
254
+ inf.blockSize = 8;
255
+ inf.opensslName = 'des-ede3-cbc';
256
+ break;
257
+ case 'blowfish-cbc':
258
+ inf.keySize = 16;
259
+ inf.blockSize = 8;
260
+ inf.opensslName = 'bf-cbc';
261
+ break;
262
+ case 'aes128-cbc':
263
+ case 'aes128-ctr':
264
+ case 'aes128-gcm@openssh.com':
265
+ inf.keySize = 16;
266
+ inf.blockSize = 16;
267
+ inf.opensslName = 'aes-128-' + cipher.slice(7, 10);
268
+ break;
269
+ case 'aes192-cbc':
270
+ case 'aes192-ctr':
271
+ case 'aes192-gcm@openssh.com':
272
+ inf.keySize = 24;
273
+ inf.blockSize = 16;
274
+ inf.opensslName = 'aes-192-' + cipher.slice(7, 10);
275
+ break;
276
+ case 'aes256-cbc':
277
+ case 'aes256-ctr':
278
+ case 'aes256-gcm@openssh.com':
279
+ inf.keySize = 32;
280
+ inf.blockSize = 16;
281
+ inf.opensslName = 'aes-256-' + cipher.slice(7, 10);
282
+ break;
283
+ default:
284
+ throw (new Error(
285
+ 'Unsupported openssl cipher "' + cipher + '"'));
286
+ }
287
+ return (inf);
288
+ }
@@ -1,27 +1,35 @@
1
1
  {
2
2
  "_args": [
3
3
  [
4
- "assert-plus@^1.0.0",
4
+ {
5
+ "raw": "assert-plus@^1.0.0",
6
+ "scope": null,
7
+ "escapedName": "assert-plus",
8
+ "name": "assert-plus",
9
+ "rawSpec": "^1.0.0",
10
+ "spec": ">=1.0.0 <2.0.0",
11
+ "type": "range"
12
+ },
5
13
  "/Users/eshanker/Code/fsevents/node_modules/sshpk"
6
14
  ]
7
15
  ],
8
16
  "_from": "assert-plus@>=1.0.0 <2.0.0",
9
17
  "_id": "assert-plus@1.0.0",
10
18
  "_inCache": true,
11
- "_installable": true,
12
19
  "_location": "/sshpk/assert-plus",
13
20
  "_nodeVersion": "0.10.40",
14
21
  "_npmUser": {
15
- "email": "patrick.f.mooney@gmail.com",
16
- "name": "pfmooney"
22
+ "name": "pfmooney",
23
+ "email": "patrick.f.mooney@gmail.com"
17
24
  },
18
25
  "_npmVersion": "3.3.9",
19
26
  "_phantomChildren": {},
20
27
  "_requested": {
21
- "name": "assert-plus",
22
28
  "raw": "assert-plus@^1.0.0",
23
- "rawSpec": "^1.0.0",
24
29
  "scope": null,
30
+ "escapedName": "assert-plus",
31
+ "name": "assert-plus",
32
+ "rawSpec": "^1.0.0",
25
33
  "spec": ">=1.0.0 <2.0.0",
26
34
  "type": "range"
27
35
  },
@@ -34,8 +42,8 @@
34
42
  "_spec": "assert-plus@^1.0.0",
35
43
  "_where": "/Users/eshanker/Code/fsevents/node_modules/sshpk",
36
44
  "author": {
37
- "email": "mcavage@gmail.com",
38
- "name": "Mark Cavage"
45
+ "name": "Mark Cavage",
46
+ "email": "mcavage@gmail.com"
39
47
  },
40
48
  "bugs": {
41
49
  "url": "https://github.com/mcavage/node-assert-plus/issues"
@@ -1,39 +1,47 @@
1
1
  {
2
2
  "_args": [
3
3
  [
4
- "sshpk@^1.7.0",
4
+ {
5
+ "raw": "sshpk@^1.7.0",
6
+ "scope": null,
7
+ "escapedName": "sshpk",
8
+ "name": "sshpk",
9
+ "rawSpec": "^1.7.0",
10
+ "spec": ">=1.7.0 <2.0.0",
11
+ "type": "range"
12
+ },
5
13
  "/Users/eshanker/Code/fsevents/node_modules/http-signature"
6
14
  ]
7
15
  ],
8
16
  "_from": "sshpk@>=1.7.0 <2.0.0",
9
- "_id": "sshpk@1.8.3",
17
+ "_id": "sshpk@1.10.2",
10
18
  "_inCache": true,
11
- "_installable": true,
12
19
  "_location": "/sshpk",
13
- "_nodeVersion": "0.12.13",
20
+ "_nodeVersion": "0.12.15",
14
21
  "_npmOperationalInternal": {
15
- "host": "packages-16-east.internal.npmjs.com",
16
- "tmp": "tmp/sshpk-1.8.3.tgz_1461968607532_0.32797130732797086"
22
+ "host": "packages-12-west.internal.npmjs.com",
23
+ "tmp": "tmp/sshpk-1.10.2.tgz_1484356342573_0.6690851037856191"
17
24
  },
18
25
  "_npmUser": {
19
- "email": "alex@cooperi.net",
20
- "name": "arekinath"
26
+ "name": "arekinath",
27
+ "email": "alex@cooperi.net"
21
28
  },
22
- "_npmVersion": "2.15.1",
29
+ "_npmVersion": "3.10.10",
23
30
  "_phantomChildren": {},
24
31
  "_requested": {
25
- "name": "sshpk",
26
32
  "raw": "sshpk@^1.7.0",
27
- "rawSpec": "^1.7.0",
28
33
  "scope": null,
34
+ "escapedName": "sshpk",
35
+ "name": "sshpk",
36
+ "rawSpec": "^1.7.0",
29
37
  "spec": ">=1.7.0 <2.0.0",
30
38
  "type": "range"
31
39
  },
32
40
  "_requiredBy": [
33
41
  "/http-signature"
34
42
  ],
35
- "_resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.8.3.tgz",
36
- "_shasum": "890cc9d614dc5292e5cb1a543b03c9abaa5c374e",
43
+ "_resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.10.2.tgz",
44
+ "_shasum": "d5a804ce22695515638e798dbe23273de070a5fa",
37
45
  "_shrinkwrap": null,
38
46
  "_spec": "sshpk@^1.7.0",
39
47
  "_where": "/Users/eshanker/Code/fsevents/node_modules/http-signature",
@@ -65,12 +73,13 @@
65
73
  "dependencies": {
66
74
  "asn1": "~0.2.3",
67
75
  "assert-plus": "^1.0.0",
76
+ "bcrypt-pbkdf": "^1.0.0",
68
77
  "dashdash": "^1.12.0",
69
78
  "ecc-jsbn": "~0.1.1",
70
79
  "getpass": "^0.1.1",
71
80
  "jodid25519": "^1.0.0",
72
81
  "jsbn": "~0.1.0",
73
- "tweetnacl": "~0.13.0"
82
+ "tweetnacl": "~0.14.0"
74
83
  },
75
84
  "description": "A library for finding and using SSH public keys",
76
85
  "devDependencies": {
@@ -85,13 +94,13 @@
85
94
  "man": "./man/man1"
86
95
  },
87
96
  "dist": {
88
- "shasum": "890cc9d614dc5292e5cb1a543b03c9abaa5c374e",
89
- "tarball": "https://registry.npmjs.org/sshpk/-/sshpk-1.8.3.tgz"
97
+ "shasum": "d5a804ce22695515638e798dbe23273de070a5fa",
98
+ "tarball": "https://registry.npmjs.org/sshpk/-/sshpk-1.10.2.tgz"
90
99
  },
91
100
  "engines": {
92
101
  "node": ">=0.10.0"
93
102
  },
94
- "gitHead": "82d39066b2df4e8284350ff5ebb08c5b95c74652",
103
+ "gitHead": "3ae535658f83e610c0dd5bb97a1b2105db7220c7",
95
104
  "homepage": "https://github.com/arekinath/node-sshpk#readme",
96
105
  "license": "MIT",
97
106
  "main": "lib/index.js",
@@ -102,16 +111,17 @@
102
111
  }
103
112
  ],
104
113
  "man": [
105
- "/Users/alex.wilson/dev/sshpk/man/man1/sshpk-conv.1",
106
- "/Users/alex.wilson/dev/sshpk/man/man1/sshpk-sign.1",
107
- "/Users/alex.wilson/dev/sshpk/man/man1/sshpk-verify.1"
114
+ "/Users/alex.wilson/dev/node-sshpk/man/man1/sshpk-conv.1",
115
+ "/Users/alex.wilson/dev/node-sshpk/man/man1/sshpk-sign.1",
116
+ "/Users/alex.wilson/dev/node-sshpk/man/man1/sshpk-verify.1"
108
117
  ],
109
118
  "name": "sshpk",
110
119
  "optionalDependencies": {
120
+ "bcrypt-pbkdf": "^1.0.0",
111
121
  "ecc-jsbn": "~0.1.1",
112
122
  "jodid25519": "^1.0.0",
113
123
  "jsbn": "~0.1.0",
114
- "tweetnacl": "~0.13.0"
124
+ "tweetnacl": "~0.14.0"
115
125
  },
116
126
  "readme": "ERROR: No README data found!",
117
127
  "repository": {
@@ -121,5 +131,5 @@
121
131
  "scripts": {
122
132
  "test": "tape test/*.js"
123
133
  },
124
- "version": "1.8.3"
134
+ "version": "1.10.2"
125
135
  }
@@ -16,6 +16,11 @@ module.exports = function (str) {
16
16
  for (var i = 0; i < str.length; i++) {
17
17
  var code = codePointAt(str, i);
18
18
 
19
+ // ignore control characters
20
+ if (code <= 0x1f || (code >= 0x7f && code <= 0x9f)) {
21
+ continue;
22
+ }
23
+
19
24
  // surrogates
20
25
  if (code >= 0x10000) {
21
26
  i++;