diff --git a/sonorancad/core/httpd.lua b/sonorancad/core/httpd.lua index 5986b50..a90852d 100644 --- a/sonorancad/core/httpd.lua +++ b/sonorancad/core/httpd.lua @@ -503,6 +503,6 @@ AddEventHandler('SonoranCAD::pushevents:shim', function(chunk) end end) -AddPluginFilePath('images', function(path) +-- AddPluginFilePath('images', function(path) -end) +-- end) \ No newline at end of file diff --git a/sonorancad/node_modules/.package-lock.json b/sonorancad/node_modules/.package-lock.json index 6ff7596..81bf4f7 100644 --- a/sonorancad/node_modules/.package-lock.json +++ b/sonorancad/node_modules/.package-lock.json @@ -4,9 +4,9 @@ "requires": true, "packages": { "node_modules/asn1": { - "version": "0.2.6", - "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.6.tgz", - "integrity": "sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ==", + "version": "0.2.4", + "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz", + "integrity": "sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg==", "dependencies": { "safer-buffer": "~2.1.0" } @@ -19,15 +19,15 @@ "node_modules/bcrypt-pbkdf": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", - "integrity": "sha512-qeFIXtP4MSoi6NLqO12WfqARWWuCKi2Rn/9hJLEmtB5yTNr9DqFWkJRCf2qShWzPeAMRnOgCrq0sg/KLv5ES9w==", + "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=", "dependencies": { "tweetnacl": "^0.14.3" } }, "node_modules/big-integer": { - "version": "1.6.52", - "resolved": "https://registry.npmjs.org/big-integer/-/big-integer-1.6.52.tgz", - "integrity": "sha512-QxD8cf2eVqJOOz63z6JIN9BzvVs/dlySa5HGSBH5xtR8dPteIRQnBxxKqkNTiT6jbDTF6jAfrd4oMcND9RGbQg==", + "version": "1.6.49", + "resolved": "https://registry.npmjs.org/big-integer/-/big-integer-1.6.49.tgz", + "integrity": "sha512-KJ7VhqH+f/BOt9a3yMwJNmcZjG53ijWMTjSAGMveQWyLwqIiwkjNP5PFgDob3Snnx86SjDj6I89fIbv0dkQeNw==", "engines": { "node": ">=0.6" } @@ -35,7 +35,7 @@ "node_modules/binary": { "version": "0.3.0", "resolved": "https://registry.npmjs.org/binary/-/binary-0.3.0.tgz", - "integrity": "sha512-D4H1y5KYwpJgK8wk1Cue5LLPgmwHKYSChkbspQg5JtVuR5ulGckxfR62H3AE9UDkdMC8yyXlqYihuz3Aqg2XZg==", + "integrity": "sha1-n2BVO8XOjDOG87VTz/R0Yq3sqnk=", "dependencies": { "buffers": "~0.1.1", "chainsaw": "~0.1.0" @@ -47,7 +47,7 @@ "node_modules/bluebird": { "version": "3.4.7", "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.4.7.tgz", - "integrity": "sha512-iD3898SR7sWVRHbiQv+sHUtHnMvC1o3nW5rAcqnq3uOn07DSAppZYUkIGslDz6gXC7HfunPe7YVBgoEJASPcHA==" + "integrity": "sha1-9y12C+Cbf3bQjtj66Ysomo0F+rM=" }, "node_modules/brace-expansion": { "version": "1.1.11", @@ -61,7 +61,7 @@ "node_modules/buffer-crc32": { "version": "0.2.13", "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", - "integrity": "sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==", + "integrity": "sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI=", "engines": { "node": "*" } @@ -77,7 +77,7 @@ "node_modules/buffers": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/buffers/-/buffers-0.1.1.tgz", - "integrity": "sha512-9q/rDEGSb/Qsvv2qvzIzdluL5k7AaJOTrw23z9reQthrbF7is4CtlT0DXyO1oei2DCp4uojjzQ7igaSHp1kAEQ==", + "integrity": "sha1-skV5w77U1tOWru5tmorn9Ugqt7s=", "engines": { "node": ">=0.2.0" } @@ -85,7 +85,7 @@ "node_modules/chainsaw": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/chainsaw/-/chainsaw-0.1.0.tgz", - "integrity": "sha512-75kWfWt6MEKNC8xYXIdRpDehRYY/tNSgwKaJq+dbbDcxORuVrrQ+SEHoWsniVn9XPYfP4gmdWIeDk/4YNp1rNQ==", + "integrity": "sha1-XqtQsor+WAdNDVgpE4iCi15fvJg=", "dependencies": { "traverse": ">=0.3.0 <0.4" }, @@ -96,7 +96,7 @@ "node_modules/concat-map": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==" + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" }, "node_modules/core-util-is": { "version": "1.0.3", @@ -106,7 +106,7 @@ "node_modules/duplexer2": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.1.4.tgz", - "integrity": "sha512-asLFVfWWtJ90ZyOUHMqk7/S2w2guQKxUI2itj3d92ADHhxUSbCMGi1f1cBcJ7xM1To+pE/Khbwo1yuNbMEPKeA==", + "integrity": "sha1-ixLauHjA1p4+eJEFFmKjL8a93ME=", "dependencies": { "readable-stream": "^2.0.2" } @@ -114,13 +114,12 @@ "node_modules/fs.realpath": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==" + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" }, "node_modules/fstream": { "version": "1.0.12", "resolved": "https://registry.npmjs.org/fstream/-/fstream-1.0.12.tgz", "integrity": "sha512-WvJ193OHa0GHPEL+AycEJgxvBEwyfRkN1vhjca23OaPVMCaLCXTd5qAu82AjTcgP1UJmytkOKb63Ypde7raDIg==", - "deprecated": "This package is no longer supported.", "dependencies": { "graceful-fs": "^4.1.2", "inherits": "~2.0.0", @@ -132,15 +131,14 @@ } }, "node_modules/glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "deprecated": "Glob versions prior to v9 are no longer supported", + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz", + "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==", "dependencies": { "fs.realpath": "^1.0.0", "inflight": "^1.0.4", "inherits": "2", - "minimatch": "^3.1.1", + "minimatch": "^3.0.4", "once": "^1.3.0", "path-is-absolute": "^1.0.0" }, @@ -152,15 +150,14 @@ } }, "node_modules/graceful-fs": { - "version": "4.2.11", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", - "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==" + "version": "4.2.8", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.8.tgz", + "integrity": "sha512-qkIilPUYcNhJpd33n0GBXTB1MMPp14TxEsEs0pTrsSVucApsYzW5V+Q8Qxhik6KU3evy+qkAAowTByymK0avdg==" }, "node_modules/inflight": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", - "deprecated": "This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.", + "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", "dependencies": { "once": "^1.3.0", "wrappy": "1" @@ -174,17 +171,17 @@ "node_modules/isarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" }, "node_modules/listenercount": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/listenercount/-/listenercount-1.0.1.tgz", - "integrity": "sha512-3mk/Zag0+IJxeDrxSgaDPy4zZ3w05PRZeJNnlWhzFz5OkX49J4krc+A8X2d2M69vGMBEX0uyl8M+W+8gH+kBqQ==" + "integrity": "sha1-hMinKrWcRyUyFIDJdeZQg0LnCTc=" }, "node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", + "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", "dependencies": { "brace-expansion": "^1.1.7" }, @@ -193,19 +190,16 @@ } }, "node_modules/minimist": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", - "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", - "funding": { - "url": "https://github.com/sponsors/ljharb" - } + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", + "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==" }, "node_modules/mkdirp": { - "version": "0.5.6", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", - "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", + "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", "dependencies": { - "minimist": "^1.2.6" + "minimist": "^1.2.5" }, "bin": { "mkdirp": "bin/cmd.js" @@ -214,7 +208,7 @@ "node_modules/once": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", "dependencies": { "wrappy": "1" } @@ -222,7 +216,7 @@ "node_modules/path-is-absolute": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", "engines": { "node": ">=0.10.0" } @@ -233,9 +227,9 @@ "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==" }, "node_modules/readable-stream": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", - "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", "dependencies": { "core-util-is": "~1.0.0", "inherits": "~2.0.3", @@ -250,7 +244,6 @@ "version": "2.7.1", "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", - "deprecated": "Rimraf versions prior to v4 are no longer supported", "dependencies": { "glob": "^7.1.3" }, @@ -271,23 +264,23 @@ "node_modules/setimmediate": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", - "integrity": "sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==" + "integrity": "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=" }, "node_modules/ssh2": { - "version": "1.16.0", - "resolved": "https://registry.npmjs.org/ssh2/-/ssh2-1.16.0.tgz", - "integrity": "sha512-r1X4KsBGedJqo7h8F5c4Ybpcr5RjyP+aWIG007uBPRjmdQWfEiVLzSK71Zji1B9sKxwaCvD8y8cwSkYrlLiRRg==", + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/ssh2/-/ssh2-1.5.0.tgz", + "integrity": "sha512-iUmRkhH9KGeszQwDW7YyyqjsMTf4z+0o48Cp4xOwlY5LjtbIAvyd3fwnsoUZW/hXmTCRA3yt7S/Jb9uVjErVlA==", "hasInstallScript": true, "dependencies": { - "asn1": "^0.2.6", + "asn1": "^0.2.4", "bcrypt-pbkdf": "^1.0.2" }, "engines": { "node": ">=10.16.0" }, "optionalDependencies": { - "cpu-features": "~0.0.10", - "nan": "^2.20.0" + "cpu-features": "0.0.2", + "nan": "^2.15.0" } }, "node_modules/string_decoder": { @@ -301,29 +294,29 @@ "node_modules/traverse": { "version": "0.3.9", "resolved": "https://registry.npmjs.org/traverse/-/traverse-0.3.9.tgz", - "integrity": "sha512-iawgk0hLP3SxGKDfnDJf8wTz4p2qImnyihM5Hh/sGvQ3K37dPi/w8sRhdNIxYA1TwFwc5mDhIJq+O0RsvXBKdQ==", + "integrity": "sha1-cXuPIgzAu3tE5AUUwisui7xw2Lk=", "engines": { "node": "*" } }, "node_modules/ts3-nodejs-library": { - "version": "3.5.1", - "resolved": "https://registry.npmjs.org/ts3-nodejs-library/-/ts3-nodejs-library-3.5.1.tgz", - "integrity": "sha512-hdGAj2lhMyAeLVc1j7sOLA8/pjwib32jtA8ncokNDLg6EGTe/AqcsCT3D/34e8xIuidD4XMMXA8yWf64lQN4Dg==", + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/ts3-nodejs-library/-/ts3-nodejs-library-3.4.0.tgz", + "integrity": "sha512-T9LV0zxvMmF6cl3GjRAUcVNrZnuCbVHS0HQw1qg7kYdrNOnXh1Eg4Ix5WpiBsuSQ0bVB45VEF85vgmmXO3S2AA==", "dependencies": { "buffer-crc32": "^0.2.13", - "ssh2": "^1.14.0" + "ssh2": "^1.4.0" } }, "node_modules/tweetnacl": { "version": "0.14.5", "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", - "integrity": "sha512-KXXFFdAbFXY4geFIwoyNK+f5Z1b7swfXABfL7HXCmoIWMKU3dmS26672A4EeQtDzLKy7SXmfBu51JolvEKwtGA==" + "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=" }, "node_modules/unzipper": { - "version": "0.10.14", - "resolved": "https://registry.npmjs.org/unzipper/-/unzipper-0.10.14.tgz", - "integrity": "sha512-ti4wZj+0bQTiX2KmKWuwj7lhV+2n//uXEotUmGuQqrbVZSEGFMbI68+c6JCQ8aAmUWYvtHEz2A8K6wXvueR/6g==", + "version": "0.10.11", + "resolved": "https://registry.npmjs.org/unzipper/-/unzipper-0.10.11.tgz", + "integrity": "sha512-+BrAq2oFqWod5IESRjL3S8baohbevGcVA+teAIOYWM3pDVdseogqbzhhvvmiyQrUNKFUnDMtELW3X8ykbyDCJw==", "dependencies": { "big-integer": "^1.6.17", "binary": "~0.3.0", @@ -340,12 +333,12 @@ "node_modules/util-deprecate": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==" + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" }, "node_modules/wrappy": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" } } } diff --git a/sonorancad/node_modules/big-integer/BigInteger.js b/sonorancad/node_modules/big-integer/BigInteger.js index e8658dc..4271f40 100644 --- a/sonorancad/node_modules/big-integer/BigInteger.js +++ b/sonorancad/node_modules/big-integer/BigInteger.js @@ -1178,10 +1178,10 @@ var bigInt = (function (undefined) { var digits = toBase(range, BASE).value; var result = [], restricted = true; for (var i = 0; i < digits.length; i++) { - var top = restricted ? digits[i] + (i + 1 < digits.length ? digits[i + 1] / BASE : 0) : BASE; + var top = restricted ? digits[i] : BASE; var digit = truncate(usedRNG() * top); result.push(digit); - if (digit < digits[i]) restricted = false; + if (digit < top) restricted = false; } return low.add(Integer.fromArray(result, BASE, false)); } @@ -1319,7 +1319,7 @@ var bigInt = (function (undefined) { BigInteger.prototype.toString = function (radix, alphabet) { if (radix === undefined) radix = 10; - if (radix !== 10 || alphabet) return toBaseString(this, radix, alphabet); + if (radix !== 10) return toBaseString(this, radix, alphabet); var v = this.value, l = v.length, str = String(v[--l]), zeros = "0000000", digit; while (--l >= 0) { digit = String(v[l]); @@ -1331,7 +1331,7 @@ var bigInt = (function (undefined) { SmallInteger.prototype.toString = function (radix, alphabet) { if (radix === undefined) radix = 10; - if (radix != 10 || alphabet) return toBaseString(this, radix, alphabet); + if (radix != 10) return toBaseString(this, radix, alphabet); return String(this.value); }; diff --git a/sonorancad/node_modules/big-integer/BigInteger.min.js b/sonorancad/node_modules/big-integer/BigInteger.min.js index a960fa6..5cc380c 100644 --- a/sonorancad/node_modules/big-integer/BigInteger.min.js +++ b/sonorancad/node_modules/big-integer/BigInteger.min.js @@ -1 +1 @@ -var bigInt=function(undefined){"use strict";var BASE=1e7,LOG_BASE=7,MAX_INT=9007199254740992,MAX_INT_ARR=smallToArray(MAX_INT),DEFAULT_ALPHABET="0123456789abcdefghijklmnopqrstuvwxyz";var supportsNativeBigInt=typeof BigInt==="function";function Integer(v,radix,alphabet,caseSensitive){if(typeof v==="undefined")return Integer[0];if(typeof radix!=="undefined")return+radix===10&&!alphabet?parseValue(v):parseBase(v,radix,alphabet,caseSensitive);return parseValue(v)}function BigInteger(value,sign){this.value=value;this.sign=sign;this.isSmall=false}BigInteger.prototype=Object.create(Integer.prototype);function SmallInteger(value){this.value=value;this.sign=value<0;this.isSmall=true}SmallInteger.prototype=Object.create(Integer.prototype);function NativeBigInt(value){this.value=value}NativeBigInt.prototype=Object.create(Integer.prototype);function isPrecise(n){return-MAX_INT0)return Math.floor(n);return Math.ceil(n)}function add(a,b){var l_a=a.length,l_b=b.length,r=new Array(l_a),carry=0,base=BASE,sum,i;for(i=0;i=base?1:0;r[i]=sum-carry*base}while(i0)r.push(carry);return r}function addAny(a,b){if(a.length>=b.length)return add(a,b);return add(b,a)}function addSmall(a,carry){var l=a.length,r=new Array(l),base=BASE,sum,i;for(i=0;i0){r[i++]=carry%base;carry=Math.floor(carry/base)}return r}BigInteger.prototype.add=function(v){var n=parseValue(v);if(this.sign!==n.sign){return this.subtract(n.negate())}var a=this.value,b=n.value;if(n.isSmall){return new BigInteger(addSmall(a,Math.abs(b)),this.sign)}return new BigInteger(addAny(a,b),this.sign)};BigInteger.prototype.plus=BigInteger.prototype.add;SmallInteger.prototype.add=function(v){var n=parseValue(v);var a=this.value;if(a<0!==n.sign){return this.subtract(n.negate())}var b=n.value;if(n.isSmall){if(isPrecise(a+b))return new SmallInteger(a+b);b=smallToArray(Math.abs(b))}return new BigInteger(addSmall(b,Math.abs(a)),a<0)};SmallInteger.prototype.plus=SmallInteger.prototype.add;NativeBigInt.prototype.add=function(v){return new NativeBigInt(this.value+parseValue(v).value)};NativeBigInt.prototype.plus=NativeBigInt.prototype.add;function subtract(a,b){var a_l=a.length,b_l=b.length,r=new Array(a_l),borrow=0,base=BASE,i,difference;for(i=0;i=0){value=subtract(a,b)}else{value=subtract(b,a);sign=!sign}value=arrayToSmall(value);if(typeof value==="number"){if(sign)value=-value;return new SmallInteger(value)}return new BigInteger(value,sign)}function subtractSmall(a,b,sign){var l=a.length,r=new Array(l),carry=-b,base=BASE,i,difference;for(i=0;i=0)};SmallInteger.prototype.minus=SmallInteger.prototype.subtract;NativeBigInt.prototype.subtract=function(v){return new NativeBigInt(this.value-parseValue(v).value)};NativeBigInt.prototype.minus=NativeBigInt.prototype.subtract;BigInteger.prototype.negate=function(){return new BigInteger(this.value,!this.sign)};SmallInteger.prototype.negate=function(){var sign=this.sign;var small=new SmallInteger(-this.value);small.sign=!sign;return small};NativeBigInt.prototype.negate=function(){return new NativeBigInt(-this.value)};BigInteger.prototype.abs=function(){return new BigInteger(this.value,false)};SmallInteger.prototype.abs=function(){return new SmallInteger(Math.abs(this.value))};NativeBigInt.prototype.abs=function(){return new NativeBigInt(this.value>=0?this.value:-this.value)};function multiplyLong(a,b){var a_l=a.length,b_l=b.length,l=a_l+b_l,r=createArray(l),base=BASE,product,carry,i,a_i,b_j;for(i=0;i0){r[i++]=carry%base;carry=Math.floor(carry/base)}return r}function shiftLeft(x,n){var r=[];while(n-- >0)r.push(0);return r.concat(x)}function multiplyKaratsuba(x,y){var n=Math.max(x.length,y.length);if(n<=30)return multiplyLong(x,y);n=Math.ceil(n/2);var b=x.slice(n),a=x.slice(0,n),d=y.slice(n),c=y.slice(0,n);var ac=multiplyKaratsuba(a,c),bd=multiplyKaratsuba(b,d),abcd=multiplyKaratsuba(addAny(a,b),addAny(c,d));var product=addAny(addAny(ac,shiftLeft(subtract(subtract(abcd,ac),bd),n)),shiftLeft(bd,2*n));trim(product);return product}function useKaratsuba(l1,l2){return-.012*l1-.012*l2+15e-6*l1*l2>0}BigInteger.prototype.multiply=function(v){var n=parseValue(v),a=this.value,b=n.value,sign=this.sign!==n.sign,abs;if(n.isSmall){if(b===0)return Integer[0];if(b===1)return this;if(b===-1)return this.negate();abs=Math.abs(b);if(abs=0;shift--){quotientDigit=base-1;if(remainder[shift+b_l]!==divisorMostSignificantDigit){quotientDigit=Math.floor((remainder[shift+b_l]*base+remainder[shift+b_l-1])/divisorMostSignificantDigit)}carry=0;borrow=0;l=divisor.length;for(i=0;ib_l){highx=(highx+1)*base}guess=Math.ceil(highx/highy);do{check=multiplySmall(b,guess);if(compareAbs(check,part)<=0)break;guess--}while(guess);result.push(guess);part=subtract(part,check)}result.reverse();return[arrayToSmall(result),arrayToSmall(part)]}function divModSmall(value,lambda){var length=value.length,quotient=createArray(length),base=BASE,i,q,remainder,divisor;remainder=0;for(i=length-1;i>=0;--i){divisor=remainder*base+value[i];q=truncate(divisor/lambda);remainder=divisor-q*lambda;quotient[i]=q|0}return[quotient,remainder|0]}function divModAny(self,v){var value,n=parseValue(v);if(supportsNativeBigInt){return[new NativeBigInt(self.value/n.value),new NativeBigInt(self.value%n.value)]}var a=self.value,b=n.value;var quotient;if(b===0)throw new Error("Cannot divide by zero");if(self.isSmall){if(n.isSmall){return[new SmallInteger(truncate(a/b)),new SmallInteger(a%b)]}return[Integer[0],self]}if(n.isSmall){if(b===1)return[self,Integer[0]];if(b==-1)return[self.negate(),Integer[0]];var abs=Math.abs(b);if(absb.length?1:-1}for(var i=a.length-1;i>=0;i--){if(a[i]!==b[i])return a[i]>b[i]?1:-1}return 0}BigInteger.prototype.compareAbs=function(v){var n=parseValue(v),a=this.value,b=n.value;if(n.isSmall)return 1;return compareAbs(a,b)};SmallInteger.prototype.compareAbs=function(v){var n=parseValue(v),a=Math.abs(this.value),b=n.value;if(n.isSmall){b=Math.abs(b);return a===b?0:a>b?1:-1}return-1};NativeBigInt.prototype.compareAbs=function(v){var a=this.value;var b=parseValue(v).value;a=a>=0?a:-a;b=b>=0?b:-b;return a===b?0:a>b?1:-1};BigInteger.prototype.compare=function(v){if(v===Infinity){return-1}if(v===-Infinity){return 1}var n=parseValue(v),a=this.value,b=n.value;if(this.sign!==n.sign){return n.sign?1:-1}if(n.isSmall){return this.sign?-1:1}return compareAbs(a,b)*(this.sign?-1:1)};BigInteger.prototype.compareTo=BigInteger.prototype.compare;SmallInteger.prototype.compare=function(v){if(v===Infinity){return-1}if(v===-Infinity){return 1}var n=parseValue(v),a=this.value,b=n.value;if(n.isSmall){return a==b?0:a>b?1:-1}if(a<0!==n.sign){return a<0?-1:1}return a<0?1:-1};SmallInteger.prototype.compareTo=SmallInteger.prototype.compare;NativeBigInt.prototype.compare=function(v){if(v===Infinity){return-1}if(v===-Infinity){return 1}var a=this.value;var b=parseValue(v).value;return a===b?0:a>b?1:-1};NativeBigInt.prototype.compareTo=NativeBigInt.prototype.compare;BigInteger.prototype.equals=function(v){return this.compare(v)===0};NativeBigInt.prototype.eq=NativeBigInt.prototype.equals=SmallInteger.prototype.eq=SmallInteger.prototype.equals=BigInteger.prototype.eq=BigInteger.prototype.equals;BigInteger.prototype.notEquals=function(v){return this.compare(v)!==0};NativeBigInt.prototype.neq=NativeBigInt.prototype.notEquals=SmallInteger.prototype.neq=SmallInteger.prototype.notEquals=BigInteger.prototype.neq=BigInteger.prototype.notEquals;BigInteger.prototype.greater=function(v){return this.compare(v)>0};NativeBigInt.prototype.gt=NativeBigInt.prototype.greater=SmallInteger.prototype.gt=SmallInteger.prototype.greater=BigInteger.prototype.gt=BigInteger.prototype.greater;BigInteger.prototype.lesser=function(v){return this.compare(v)<0};NativeBigInt.prototype.lt=NativeBigInt.prototype.lesser=SmallInteger.prototype.lt=SmallInteger.prototype.lesser=BigInteger.prototype.lt=BigInteger.prototype.lesser;BigInteger.prototype.greaterOrEquals=function(v){return this.compare(v)>=0};NativeBigInt.prototype.geq=NativeBigInt.prototype.greaterOrEquals=SmallInteger.prototype.geq=SmallInteger.prototype.greaterOrEquals=BigInteger.prototype.geq=BigInteger.prototype.greaterOrEquals;BigInteger.prototype.lesserOrEquals=function(v){return this.compare(v)<=0};NativeBigInt.prototype.leq=NativeBigInt.prototype.lesserOrEquals=SmallInteger.prototype.leq=SmallInteger.prototype.lesserOrEquals=BigInteger.prototype.leq=BigInteger.prototype.lesserOrEquals;BigInteger.prototype.isEven=function(){return(this.value[0]&1)===0};SmallInteger.prototype.isEven=function(){return(this.value&1)===0};NativeBigInt.prototype.isEven=function(){return(this.value&BigInt(1))===BigInt(0)};BigInteger.prototype.isOdd=function(){return(this.value[0]&1)===1};SmallInteger.prototype.isOdd=function(){return(this.value&1)===1};NativeBigInt.prototype.isOdd=function(){return(this.value&BigInt(1))===BigInt(1)};BigInteger.prototype.isPositive=function(){return!this.sign};SmallInteger.prototype.isPositive=function(){return this.value>0};NativeBigInt.prototype.isPositive=SmallInteger.prototype.isPositive;BigInteger.prototype.isNegative=function(){return this.sign};SmallInteger.prototype.isNegative=function(){return this.value<0};NativeBigInt.prototype.isNegative=SmallInteger.prototype.isNegative;BigInteger.prototype.isUnit=function(){return false};SmallInteger.prototype.isUnit=function(){return Math.abs(this.value)===1};NativeBigInt.prototype.isUnit=function(){return this.abs().value===BigInt(1)};BigInteger.prototype.isZero=function(){return false};SmallInteger.prototype.isZero=function(){return this.value===0};NativeBigInt.prototype.isZero=function(){return this.value===BigInt(0)};BigInteger.prototype.isDivisibleBy=function(v){var n=parseValue(v);if(n.isZero())return false;if(n.isUnit())return true;if(n.compareAbs(2)===0)return this.isEven();return this.mod(n).isZero()};NativeBigInt.prototype.isDivisibleBy=SmallInteger.prototype.isDivisibleBy=BigInteger.prototype.isDivisibleBy;function isBasicPrime(v){var n=v.abs();if(n.isUnit())return false;if(n.equals(2)||n.equals(3)||n.equals(5))return true;if(n.isEven()||n.isDivisibleBy(3)||n.isDivisibleBy(5))return false;if(n.lesser(49))return true}function millerRabinTest(n,a){var nPrev=n.prev(),b=nPrev,r=0,d,t,i,x;while(b.isEven())b=b.divide(2),r++;next:for(i=0;i-MAX_INT)return new SmallInteger(value-1);return new BigInteger(MAX_INT_ARR,true)};NativeBigInt.prototype.prev=function(){return new NativeBigInt(this.value-BigInt(1))};var powersOfTwo=[1];while(2*powersOfTwo[powersOfTwo.length-1]<=BASE)powersOfTwo.push(2*powersOfTwo[powersOfTwo.length-1]);var powers2Length=powersOfTwo.length,highestPower2=powersOfTwo[powers2Length-1];function shift_isSmall(n){return Math.abs(n)<=BASE}BigInteger.prototype.shiftLeft=function(v){var n=parseValue(v).toJSNumber();if(!shift_isSmall(n)){throw new Error(String(n)+" is too large for shifting.")}if(n<0)return this.shiftRight(-n);var result=this;if(result.isZero())return result;while(n>=powers2Length){result=result.multiply(highestPower2);n-=powers2Length-1}return result.multiply(powersOfTwo[n])};NativeBigInt.prototype.shiftLeft=SmallInteger.prototype.shiftLeft=BigInteger.prototype.shiftLeft;BigInteger.prototype.shiftRight=function(v){var remQuo;var n=parseValue(v).toJSNumber();if(!shift_isSmall(n)){throw new Error(String(n)+" is too large for shifting.")}if(n<0)return this.shiftLeft(-n);var result=this;while(n>=powers2Length){if(result.isZero()||result.isNegative()&&result.isUnit())return result;remQuo=divModAny(result,highestPower2);result=remQuo[1].isNegative()?remQuo[0].prev():remQuo[0];n-=powers2Length-1}remQuo=divModAny(result,powersOfTwo[n]);return remQuo[1].isNegative()?remQuo[0].prev():remQuo[0]};NativeBigInt.prototype.shiftRight=SmallInteger.prototype.shiftRight=BigInteger.prototype.shiftRight;function bitwise(x,y,fn){y=parseValue(y);var xSign=x.isNegative(),ySign=y.isNegative();var xRem=xSign?x.not():x,yRem=ySign?y.not():y;var xDigit=0,yDigit=0;var xDivMod=null,yDivMod=null;var result=[];while(!xRem.isZero()||!yRem.isZero()){xDivMod=divModAny(xRem,highestPower2);xDigit=xDivMod[1].toJSNumber();if(xSign){xDigit=highestPower2-1-xDigit}yDivMod=divModAny(yRem,highestPower2);yDigit=yDivMod[1].toJSNumber();if(ySign){yDigit=highestPower2-1-yDigit}xRem=xDivMod[0];yRem=yDivMod[0];result.push(fn(xDigit,yDigit))}var sum=fn(xSign?1:0,ySign?1:0)!==0?bigInt(-1):bigInt(0);for(var i=result.length-1;i>=0;i-=1){sum=sum.multiply(highestPower2).add(bigInt(result[i]))}return sum}BigInteger.prototype.not=function(){return this.negate().prev()};NativeBigInt.prototype.not=SmallInteger.prototype.not=BigInteger.prototype.not;BigInteger.prototype.and=function(n){return bitwise(this,n,function(a,b){return a&b})};NativeBigInt.prototype.and=SmallInteger.prototype.and=BigInteger.prototype.and;BigInteger.prototype.or=function(n){return bitwise(this,n,function(a,b){return a|b})};NativeBigInt.prototype.or=SmallInteger.prototype.or=BigInteger.prototype.or;BigInteger.prototype.xor=function(n){return bitwise(this,n,function(a,b){return a^b})};NativeBigInt.prototype.xor=SmallInteger.prototype.xor=BigInteger.prototype.xor;var LOBMASK_I=1<<30,LOBMASK_BI=(BASE&-BASE)*(BASE&-BASE)|LOBMASK_I;function roughLOB(n){var v=n.value,x=typeof v==="number"?v|LOBMASK_I:typeof v==="bigint"?v|BigInt(LOBMASK_I):v[0]+v[1]*BASE|LOBMASK_BI;return x&-x}function integerLogarithm(value,base){if(base.compareTo(value)<=0){var tmp=integerLogarithm(value,base.square(base));var p=tmp.p;var e=tmp.e;var t=p.multiply(base);return t.compareTo(value)<=0?{p:t,e:e*2+1}:{p:p,e:e*2}}return{p:bigInt(1),e:0}}BigInteger.prototype.bitLength=function(){var n=this;if(n.compareTo(bigInt(0))<0){n=n.negate().subtract(bigInt(1))}if(n.compareTo(bigInt(0))===0){return bigInt(0)}return bigInt(integerLogarithm(n,bigInt(2)).e).add(bigInt(1))};NativeBigInt.prototype.bitLength=SmallInteger.prototype.bitLength=BigInteger.prototype.bitLength;function max(a,b){a=parseValue(a);b=parseValue(b);return a.greater(b)?a:b}function min(a,b){a=parseValue(a);b=parseValue(b);return a.lesser(b)?a:b}function gcd(a,b){a=parseValue(a).abs();b=parseValue(b).abs();if(a.equals(b))return a;if(a.isZero())return b;if(b.isZero())return a;var c=Integer[1],d,t;while(a.isEven()&&b.isEven()){d=min(roughLOB(a),roughLOB(b));a=a.divide(d);b=b.divide(d);c=c.multiply(d)}while(a.isEven()){a=a.divide(roughLOB(a))}do{while(b.isEven()){b=b.divide(roughLOB(b))}if(a.greater(b)){t=b;b=a;a=t}b=b.subtract(a)}while(!b.isZero());return c.isUnit()?a:a.multiply(c)}function lcm(a,b){a=parseValue(a).abs();b=parseValue(b).abs();return a.divide(gcd(a,b)).multiply(b)}function randBetween(a,b,rng){a=parseValue(a);b=parseValue(b);var usedRNG=rng||Math.random;var low=min(a,b),high=max(a,b);var range=high.subtract(low).add(1);if(range.isSmall)return low.add(Math.floor(usedRNG()*range));var digits=toBase(range,BASE).value;var result=[],restricted=true;for(var i=0;i=absBase){if(c==="1"&&absBase===1)continue;throw new Error(c+" is not a valid digit in base "+base+".")}}}base=parseValue(base);var digits=[];var isNegative=text[0]==="-";for(i=isNegative?1:0;i"&&i=0;i--){val=val.add(digits[i].times(pow));pow=pow.times(base)}return isNegative?val.negate():val}function stringify(digit,alphabet){alphabet=alphabet||DEFAULT_ALPHABET;if(digit"}function toBase(n,base){base=bigInt(base);if(base.isZero()){if(n.isZero())return{value:[0],isNegative:false};throw new Error("Cannot convert nonzero numbers to base 0.")}if(base.equals(-1)){if(n.isZero())return{value:[0],isNegative:false};if(n.isNegative())return{value:[].concat.apply([],Array.apply(null,Array(-n.toJSNumber())).map(Array.prototype.valueOf,[1,0])),isNegative:false};var arr=Array.apply(null,Array(n.toJSNumber()-1)).map(Array.prototype.valueOf,[0,1]);arr.unshift([1]);return{value:[].concat.apply([],arr),isNegative:false}}var neg=false;if(n.isNegative()&&base.isPositive()){neg=true;n=n.abs()}if(base.isUnit()){if(n.isZero())return{value:[0],isNegative:false};return{value:Array.apply(null,Array(n.toJSNumber())).map(Number.prototype.valueOf,1),isNegative:neg}}var out=[];var left=n,divmod;while(left.isNegative()||left.compareAbs(base)>=0){divmod=left.divmod(base);left=divmod.quotient;var digit=divmod.remainder;if(digit.isNegative()){digit=base.minus(digit).abs();left=left.next()}out.push(digit.toJSNumber())}out.push(left.toJSNumber());return{value:out.reverse(),isNegative:neg}}function toBaseString(n,base,alphabet){var arr=toBase(n,base);return(arr.isNegative?"-":"")+arr.value.map(function(x){return stringify(x,alphabet)}).join("")}BigInteger.prototype.toArray=function(radix){return toBase(this,radix)};SmallInteger.prototype.toArray=function(radix){return toBase(this,radix)};NativeBigInt.prototype.toArray=function(radix){return toBase(this,radix)};BigInteger.prototype.toString=function(radix,alphabet){if(radix===undefined)radix=10;if(radix!==10||alphabet)return toBaseString(this,radix,alphabet);var v=this.value,l=v.length,str=String(v[--l]),zeros="0000000",digit;while(--l>=0){digit=String(v[l]);str+=zeros.slice(digit.length)+digit}var sign=this.sign?"-":"";return sign+str};SmallInteger.prototype.toString=function(radix,alphabet){if(radix===undefined)radix=10;if(radix!=10||alphabet)return toBaseString(this,radix,alphabet);return String(this.value)};NativeBigInt.prototype.toString=SmallInteger.prototype.toString;NativeBigInt.prototype.toJSON=BigInteger.prototype.toJSON=SmallInteger.prototype.toJSON=function(){return this.toString()};BigInteger.prototype.valueOf=function(){return parseInt(this.toString(),10)};BigInteger.prototype.toJSNumber=BigInteger.prototype.valueOf;SmallInteger.prototype.valueOf=function(){return this.value};SmallInteger.prototype.toJSNumber=SmallInteger.prototype.valueOf;NativeBigInt.prototype.valueOf=NativeBigInt.prototype.toJSNumber=function(){return parseInt(this.toString(),10)};function parseStringValue(v){if(isPrecise(+v)){var x=+v;if(x===truncate(x))return supportsNativeBigInt?new NativeBigInt(BigInt(x)):new SmallInteger(x);throw new Error("Invalid integer: "+v)}var sign=v[0]==="-";if(sign)v=v.slice(1);var split=v.split(/e/i);if(split.length>2)throw new Error("Invalid integer: "+split.join("e"));if(split.length===2){var exp=split[1];if(exp[0]==="+")exp=exp.slice(1);exp=+exp;if(exp!==truncate(exp)||!isPrecise(exp))throw new Error("Invalid integer: "+exp+" is not a valid exponent.");var text=split[0];var decimalPlace=text.indexOf(".");if(decimalPlace>=0){exp-=text.length-decimalPlace-1;text=text.slice(0,decimalPlace)+text.slice(decimalPlace+1)}if(exp<0)throw new Error("Cannot include negative exponent part for integers");text+=new Array(exp+1).join("0");v=text}var isValid=/^([0-9][0-9]*)$/.test(v);if(!isValid)throw new Error("Invalid integer: "+v);if(supportsNativeBigInt){return new NativeBigInt(BigInt(sign?"-"+v:v))}var r=[],max=v.length,l=LOG_BASE,min=max-l;while(max>0){r.push(+v.slice(min,max));min-=l;if(min<0)min=0;max-=l}trim(r);return new BigInteger(r,sign)}function parseNumberValue(v){if(supportsNativeBigInt){return new NativeBigInt(BigInt(v))}if(isPrecise(v)){if(v!==truncate(v))throw new Error(v+" is not an integer.");return new SmallInteger(v)}return parseStringValue(v.toString())}function parseValue(v){if(typeof v==="number"){return parseNumberValue(v)}if(typeof v==="string"){return parseStringValue(v)}if(typeof v==="bigint"){return new NativeBigInt(v)}return v}for(var i=0;i<1e3;i++){Integer[i]=parseValue(i);if(i>0)Integer[-i]=parseValue(-i)}Integer.one=Integer[1];Integer.zero=Integer[0];Integer.minusOne=Integer[-1];Integer.max=max;Integer.min=min;Integer.gcd=gcd;Integer.lcm=lcm;Integer.isInstance=function(x){return x instanceof BigInteger||x instanceof SmallInteger||x instanceof NativeBigInt};Integer.randBetween=randBetween;Integer.fromArray=function(digits,base,isNegative){return parseBaseFromArray(digits.map(parseValue),parseValue(base||10),isNegative)};return Integer}();if(typeof module!=="undefined"&&module.hasOwnProperty("exports")){module.exports=bigInt}if(typeof define==="function"&&define.amd){define(function(){return bigInt})} \ No newline at end of file +var bigInt=function(undefined){"use strict";var BASE=1e7,LOG_BASE=7,MAX_INT=9007199254740992,MAX_INT_ARR=smallToArray(MAX_INT),DEFAULT_ALPHABET="0123456789abcdefghijklmnopqrstuvwxyz";var supportsNativeBigInt=typeof BigInt==="function";function Integer(v,radix,alphabet,caseSensitive){if(typeof v==="undefined")return Integer[0];if(typeof radix!=="undefined")return+radix===10&&!alphabet?parseValue(v):parseBase(v,radix,alphabet,caseSensitive);return parseValue(v)}function BigInteger(value,sign){this.value=value;this.sign=sign;this.isSmall=false}BigInteger.prototype=Object.create(Integer.prototype);function SmallInteger(value){this.value=value;this.sign=value<0;this.isSmall=true}SmallInteger.prototype=Object.create(Integer.prototype);function NativeBigInt(value){this.value=value}NativeBigInt.prototype=Object.create(Integer.prototype);function isPrecise(n){return-MAX_INT0)return Math.floor(n);return Math.ceil(n)}function add(a,b){var l_a=a.length,l_b=b.length,r=new Array(l_a),carry=0,base=BASE,sum,i;for(i=0;i=base?1:0;r[i]=sum-carry*base}while(i0)r.push(carry);return r}function addAny(a,b){if(a.length>=b.length)return add(a,b);return add(b,a)}function addSmall(a,carry){var l=a.length,r=new Array(l),base=BASE,sum,i;for(i=0;i0){r[i++]=carry%base;carry=Math.floor(carry/base)}return r}BigInteger.prototype.add=function(v){var n=parseValue(v);if(this.sign!==n.sign){return this.subtract(n.negate())}var a=this.value,b=n.value;if(n.isSmall){return new BigInteger(addSmall(a,Math.abs(b)),this.sign)}return new BigInteger(addAny(a,b),this.sign)};BigInteger.prototype.plus=BigInteger.prototype.add;SmallInteger.prototype.add=function(v){var n=parseValue(v);var a=this.value;if(a<0!==n.sign){return this.subtract(n.negate())}var b=n.value;if(n.isSmall){if(isPrecise(a+b))return new SmallInteger(a+b);b=smallToArray(Math.abs(b))}return new BigInteger(addSmall(b,Math.abs(a)),a<0)};SmallInteger.prototype.plus=SmallInteger.prototype.add;NativeBigInt.prototype.add=function(v){return new NativeBigInt(this.value+parseValue(v).value)};NativeBigInt.prototype.plus=NativeBigInt.prototype.add;function subtract(a,b){var a_l=a.length,b_l=b.length,r=new Array(a_l),borrow=0,base=BASE,i,difference;for(i=0;i=0){value=subtract(a,b)}else{value=subtract(b,a);sign=!sign}value=arrayToSmall(value);if(typeof value==="number"){if(sign)value=-value;return new SmallInteger(value)}return new BigInteger(value,sign)}function subtractSmall(a,b,sign){var l=a.length,r=new Array(l),carry=-b,base=BASE,i,difference;for(i=0;i=0)};SmallInteger.prototype.minus=SmallInteger.prototype.subtract;NativeBigInt.prototype.subtract=function(v){return new NativeBigInt(this.value-parseValue(v).value)};NativeBigInt.prototype.minus=NativeBigInt.prototype.subtract;BigInteger.prototype.negate=function(){return new BigInteger(this.value,!this.sign)};SmallInteger.prototype.negate=function(){var sign=this.sign;var small=new SmallInteger(-this.value);small.sign=!sign;return small};NativeBigInt.prototype.negate=function(){return new NativeBigInt(-this.value)};BigInteger.prototype.abs=function(){return new BigInteger(this.value,false)};SmallInteger.prototype.abs=function(){return new SmallInteger(Math.abs(this.value))};NativeBigInt.prototype.abs=function(){return new NativeBigInt(this.value>=0?this.value:-this.value)};function multiplyLong(a,b){var a_l=a.length,b_l=b.length,l=a_l+b_l,r=createArray(l),base=BASE,product,carry,i,a_i,b_j;for(i=0;i0){r[i++]=carry%base;carry=Math.floor(carry/base)}return r}function shiftLeft(x,n){var r=[];while(n-- >0)r.push(0);return r.concat(x)}function multiplyKaratsuba(x,y){var n=Math.max(x.length,y.length);if(n<=30)return multiplyLong(x,y);n=Math.ceil(n/2);var b=x.slice(n),a=x.slice(0,n),d=y.slice(n),c=y.slice(0,n);var ac=multiplyKaratsuba(a,c),bd=multiplyKaratsuba(b,d),abcd=multiplyKaratsuba(addAny(a,b),addAny(c,d));var product=addAny(addAny(ac,shiftLeft(subtract(subtract(abcd,ac),bd),n)),shiftLeft(bd,2*n));trim(product);return product}function useKaratsuba(l1,l2){return-.012*l1-.012*l2+15e-6*l1*l2>0}BigInteger.prototype.multiply=function(v){var n=parseValue(v),a=this.value,b=n.value,sign=this.sign!==n.sign,abs;if(n.isSmall){if(b===0)return Integer[0];if(b===1)return this;if(b===-1)return this.negate();abs=Math.abs(b);if(abs=0;shift--){quotientDigit=base-1;if(remainder[shift+b_l]!==divisorMostSignificantDigit){quotientDigit=Math.floor((remainder[shift+b_l]*base+remainder[shift+b_l-1])/divisorMostSignificantDigit)}carry=0;borrow=0;l=divisor.length;for(i=0;ib_l){highx=(highx+1)*base}guess=Math.ceil(highx/highy);do{check=multiplySmall(b,guess);if(compareAbs(check,part)<=0)break;guess--}while(guess);result.push(guess);part=subtract(part,check)}result.reverse();return[arrayToSmall(result),arrayToSmall(part)]}function divModSmall(value,lambda){var length=value.length,quotient=createArray(length),base=BASE,i,q,remainder,divisor;remainder=0;for(i=length-1;i>=0;--i){divisor=remainder*base+value[i];q=truncate(divisor/lambda);remainder=divisor-q*lambda;quotient[i]=q|0}return[quotient,remainder|0]}function divModAny(self,v){var value,n=parseValue(v);if(supportsNativeBigInt){return[new NativeBigInt(self.value/n.value),new NativeBigInt(self.value%n.value)]}var a=self.value,b=n.value;var quotient;if(b===0)throw new Error("Cannot divide by zero");if(self.isSmall){if(n.isSmall){return[new SmallInteger(truncate(a/b)),new SmallInteger(a%b)]}return[Integer[0],self]}if(n.isSmall){if(b===1)return[self,Integer[0]];if(b==-1)return[self.negate(),Integer[0]];var abs=Math.abs(b);if(absb.length?1:-1}for(var i=a.length-1;i>=0;i--){if(a[i]!==b[i])return a[i]>b[i]?1:-1}return 0}BigInteger.prototype.compareAbs=function(v){var n=parseValue(v),a=this.value,b=n.value;if(n.isSmall)return 1;return compareAbs(a,b)};SmallInteger.prototype.compareAbs=function(v){var n=parseValue(v),a=Math.abs(this.value),b=n.value;if(n.isSmall){b=Math.abs(b);return a===b?0:a>b?1:-1}return-1};NativeBigInt.prototype.compareAbs=function(v){var a=this.value;var b=parseValue(v).value;a=a>=0?a:-a;b=b>=0?b:-b;return a===b?0:a>b?1:-1};BigInteger.prototype.compare=function(v){if(v===Infinity){return-1}if(v===-Infinity){return 1}var n=parseValue(v),a=this.value,b=n.value;if(this.sign!==n.sign){return n.sign?1:-1}if(n.isSmall){return this.sign?-1:1}return compareAbs(a,b)*(this.sign?-1:1)};BigInteger.prototype.compareTo=BigInteger.prototype.compare;SmallInteger.prototype.compare=function(v){if(v===Infinity){return-1}if(v===-Infinity){return 1}var n=parseValue(v),a=this.value,b=n.value;if(n.isSmall){return a==b?0:a>b?1:-1}if(a<0!==n.sign){return a<0?-1:1}return a<0?1:-1};SmallInteger.prototype.compareTo=SmallInteger.prototype.compare;NativeBigInt.prototype.compare=function(v){if(v===Infinity){return-1}if(v===-Infinity){return 1}var a=this.value;var b=parseValue(v).value;return a===b?0:a>b?1:-1};NativeBigInt.prototype.compareTo=NativeBigInt.prototype.compare;BigInteger.prototype.equals=function(v){return this.compare(v)===0};NativeBigInt.prototype.eq=NativeBigInt.prototype.equals=SmallInteger.prototype.eq=SmallInteger.prototype.equals=BigInteger.prototype.eq=BigInteger.prototype.equals;BigInteger.prototype.notEquals=function(v){return this.compare(v)!==0};NativeBigInt.prototype.neq=NativeBigInt.prototype.notEquals=SmallInteger.prototype.neq=SmallInteger.prototype.notEquals=BigInteger.prototype.neq=BigInteger.prototype.notEquals;BigInteger.prototype.greater=function(v){return this.compare(v)>0};NativeBigInt.prototype.gt=NativeBigInt.prototype.greater=SmallInteger.prototype.gt=SmallInteger.prototype.greater=BigInteger.prototype.gt=BigInteger.prototype.greater;BigInteger.prototype.lesser=function(v){return this.compare(v)<0};NativeBigInt.prototype.lt=NativeBigInt.prototype.lesser=SmallInteger.prototype.lt=SmallInteger.prototype.lesser=BigInteger.prototype.lt=BigInteger.prototype.lesser;BigInteger.prototype.greaterOrEquals=function(v){return this.compare(v)>=0};NativeBigInt.prototype.geq=NativeBigInt.prototype.greaterOrEquals=SmallInteger.prototype.geq=SmallInteger.prototype.greaterOrEquals=BigInteger.prototype.geq=BigInteger.prototype.greaterOrEquals;BigInteger.prototype.lesserOrEquals=function(v){return this.compare(v)<=0};NativeBigInt.prototype.leq=NativeBigInt.prototype.lesserOrEquals=SmallInteger.prototype.leq=SmallInteger.prototype.lesserOrEquals=BigInteger.prototype.leq=BigInteger.prototype.lesserOrEquals;BigInteger.prototype.isEven=function(){return(this.value[0]&1)===0};SmallInteger.prototype.isEven=function(){return(this.value&1)===0};NativeBigInt.prototype.isEven=function(){return(this.value&BigInt(1))===BigInt(0)};BigInteger.prototype.isOdd=function(){return(this.value[0]&1)===1};SmallInteger.prototype.isOdd=function(){return(this.value&1)===1};NativeBigInt.prototype.isOdd=function(){return(this.value&BigInt(1))===BigInt(1)};BigInteger.prototype.isPositive=function(){return!this.sign};SmallInteger.prototype.isPositive=function(){return this.value>0};NativeBigInt.prototype.isPositive=SmallInteger.prototype.isPositive;BigInteger.prototype.isNegative=function(){return this.sign};SmallInteger.prototype.isNegative=function(){return this.value<0};NativeBigInt.prototype.isNegative=SmallInteger.prototype.isNegative;BigInteger.prototype.isUnit=function(){return false};SmallInteger.prototype.isUnit=function(){return Math.abs(this.value)===1};NativeBigInt.prototype.isUnit=function(){return this.abs().value===BigInt(1)};BigInteger.prototype.isZero=function(){return false};SmallInteger.prototype.isZero=function(){return this.value===0};NativeBigInt.prototype.isZero=function(){return this.value===BigInt(0)};BigInteger.prototype.isDivisibleBy=function(v){var n=parseValue(v);if(n.isZero())return false;if(n.isUnit())return true;if(n.compareAbs(2)===0)return this.isEven();return this.mod(n).isZero()};NativeBigInt.prototype.isDivisibleBy=SmallInteger.prototype.isDivisibleBy=BigInteger.prototype.isDivisibleBy;function isBasicPrime(v){var n=v.abs();if(n.isUnit())return false;if(n.equals(2)||n.equals(3)||n.equals(5))return true;if(n.isEven()||n.isDivisibleBy(3)||n.isDivisibleBy(5))return false;if(n.lesser(49))return true}function millerRabinTest(n,a){var nPrev=n.prev(),b=nPrev,r=0,d,t,i,x;while(b.isEven())b=b.divide(2),r++;next:for(i=0;i-MAX_INT)return new SmallInteger(value-1);return new BigInteger(MAX_INT_ARR,true)};NativeBigInt.prototype.prev=function(){return new NativeBigInt(this.value-BigInt(1))};var powersOfTwo=[1];while(2*powersOfTwo[powersOfTwo.length-1]<=BASE)powersOfTwo.push(2*powersOfTwo[powersOfTwo.length-1]);var powers2Length=powersOfTwo.length,highestPower2=powersOfTwo[powers2Length-1];function shift_isSmall(n){return Math.abs(n)<=BASE}BigInteger.prototype.shiftLeft=function(v){var n=parseValue(v).toJSNumber();if(!shift_isSmall(n)){throw new Error(String(n)+" is too large for shifting.")}if(n<0)return this.shiftRight(-n);var result=this;if(result.isZero())return result;while(n>=powers2Length){result=result.multiply(highestPower2);n-=powers2Length-1}return result.multiply(powersOfTwo[n])};NativeBigInt.prototype.shiftLeft=SmallInteger.prototype.shiftLeft=BigInteger.prototype.shiftLeft;BigInteger.prototype.shiftRight=function(v){var remQuo;var n=parseValue(v).toJSNumber();if(!shift_isSmall(n)){throw new Error(String(n)+" is too large for shifting.")}if(n<0)return this.shiftLeft(-n);var result=this;while(n>=powers2Length){if(result.isZero()||result.isNegative()&&result.isUnit())return result;remQuo=divModAny(result,highestPower2);result=remQuo[1].isNegative()?remQuo[0].prev():remQuo[0];n-=powers2Length-1}remQuo=divModAny(result,powersOfTwo[n]);return remQuo[1].isNegative()?remQuo[0].prev():remQuo[0]};NativeBigInt.prototype.shiftRight=SmallInteger.prototype.shiftRight=BigInteger.prototype.shiftRight;function bitwise(x,y,fn){y=parseValue(y);var xSign=x.isNegative(),ySign=y.isNegative();var xRem=xSign?x.not():x,yRem=ySign?y.not():y;var xDigit=0,yDigit=0;var xDivMod=null,yDivMod=null;var result=[];while(!xRem.isZero()||!yRem.isZero()){xDivMod=divModAny(xRem,highestPower2);xDigit=xDivMod[1].toJSNumber();if(xSign){xDigit=highestPower2-1-xDigit}yDivMod=divModAny(yRem,highestPower2);yDigit=yDivMod[1].toJSNumber();if(ySign){yDigit=highestPower2-1-yDigit}xRem=xDivMod[0];yRem=yDivMod[0];result.push(fn(xDigit,yDigit))}var sum=fn(xSign?1:0,ySign?1:0)!==0?bigInt(-1):bigInt(0);for(var i=result.length-1;i>=0;i-=1){sum=sum.multiply(highestPower2).add(bigInt(result[i]))}return sum}BigInteger.prototype.not=function(){return this.negate().prev()};NativeBigInt.prototype.not=SmallInteger.prototype.not=BigInteger.prototype.not;BigInteger.prototype.and=function(n){return bitwise(this,n,function(a,b){return a&b})};NativeBigInt.prototype.and=SmallInteger.prototype.and=BigInteger.prototype.and;BigInteger.prototype.or=function(n){return bitwise(this,n,function(a,b){return a|b})};NativeBigInt.prototype.or=SmallInteger.prototype.or=BigInteger.prototype.or;BigInteger.prototype.xor=function(n){return bitwise(this,n,function(a,b){return a^b})};NativeBigInt.prototype.xor=SmallInteger.prototype.xor=BigInteger.prototype.xor;var LOBMASK_I=1<<30,LOBMASK_BI=(BASE&-BASE)*(BASE&-BASE)|LOBMASK_I;function roughLOB(n){var v=n.value,x=typeof v==="number"?v|LOBMASK_I:typeof v==="bigint"?v|BigInt(LOBMASK_I):v[0]+v[1]*BASE|LOBMASK_BI;return x&-x}function integerLogarithm(value,base){if(base.compareTo(value)<=0){var tmp=integerLogarithm(value,base.square(base));var p=tmp.p;var e=tmp.e;var t=p.multiply(base);return t.compareTo(value)<=0?{p:t,e:e*2+1}:{p:p,e:e*2}}return{p:bigInt(1),e:0}}BigInteger.prototype.bitLength=function(){var n=this;if(n.compareTo(bigInt(0))<0){n=n.negate().subtract(bigInt(1))}if(n.compareTo(bigInt(0))===0){return bigInt(0)}return bigInt(integerLogarithm(n,bigInt(2)).e).add(bigInt(1))};NativeBigInt.prototype.bitLength=SmallInteger.prototype.bitLength=BigInteger.prototype.bitLength;function max(a,b){a=parseValue(a);b=parseValue(b);return a.greater(b)?a:b}function min(a,b){a=parseValue(a);b=parseValue(b);return a.lesser(b)?a:b}function gcd(a,b){a=parseValue(a).abs();b=parseValue(b).abs();if(a.equals(b))return a;if(a.isZero())return b;if(b.isZero())return a;var c=Integer[1],d,t;while(a.isEven()&&b.isEven()){d=min(roughLOB(a),roughLOB(b));a=a.divide(d);b=b.divide(d);c=c.multiply(d)}while(a.isEven()){a=a.divide(roughLOB(a))}do{while(b.isEven()){b=b.divide(roughLOB(b))}if(a.greater(b)){t=b;b=a;a=t}b=b.subtract(a)}while(!b.isZero());return c.isUnit()?a:a.multiply(c)}function lcm(a,b){a=parseValue(a).abs();b=parseValue(b).abs();return a.divide(gcd(a,b)).multiply(b)}function randBetween(a,b,rng){a=parseValue(a);b=parseValue(b);var usedRNG=rng||Math.random;var low=min(a,b),high=max(a,b);var range=high.subtract(low).add(1);if(range.isSmall)return low.add(Math.floor(usedRNG()*range));var digits=toBase(range,BASE).value;var result=[],restricted=true;for(var i=0;i=absBase){if(c==="1"&&absBase===1)continue;throw new Error(c+" is not a valid digit in base "+base+".")}}}base=parseValue(base);var digits=[];var isNegative=text[0]==="-";for(i=isNegative?1:0;i"&&i=0;i--){val=val.add(digits[i].times(pow));pow=pow.times(base)}return isNegative?val.negate():val}function stringify(digit,alphabet){alphabet=alphabet||DEFAULT_ALPHABET;if(digit"}function toBase(n,base){base=bigInt(base);if(base.isZero()){if(n.isZero())return{value:[0],isNegative:false};throw new Error("Cannot convert nonzero numbers to base 0.")}if(base.equals(-1)){if(n.isZero())return{value:[0],isNegative:false};if(n.isNegative())return{value:[].concat.apply([],Array.apply(null,Array(-n.toJSNumber())).map(Array.prototype.valueOf,[1,0])),isNegative:false};var arr=Array.apply(null,Array(n.toJSNumber()-1)).map(Array.prototype.valueOf,[0,1]);arr.unshift([1]);return{value:[].concat.apply([],arr),isNegative:false}}var neg=false;if(n.isNegative()&&base.isPositive()){neg=true;n=n.abs()}if(base.isUnit()){if(n.isZero())return{value:[0],isNegative:false};return{value:Array.apply(null,Array(n.toJSNumber())).map(Number.prototype.valueOf,1),isNegative:neg}}var out=[];var left=n,divmod;while(left.isNegative()||left.compareAbs(base)>=0){divmod=left.divmod(base);left=divmod.quotient;var digit=divmod.remainder;if(digit.isNegative()){digit=base.minus(digit).abs();left=left.next()}out.push(digit.toJSNumber())}out.push(left.toJSNumber());return{value:out.reverse(),isNegative:neg}}function toBaseString(n,base,alphabet){var arr=toBase(n,base);return(arr.isNegative?"-":"")+arr.value.map(function(x){return stringify(x,alphabet)}).join("")}BigInteger.prototype.toArray=function(radix){return toBase(this,radix)};SmallInteger.prototype.toArray=function(radix){return toBase(this,radix)};NativeBigInt.prototype.toArray=function(radix){return toBase(this,radix)};BigInteger.prototype.toString=function(radix,alphabet){if(radix===undefined)radix=10;if(radix!==10)return toBaseString(this,radix,alphabet);var v=this.value,l=v.length,str=String(v[--l]),zeros="0000000",digit;while(--l>=0){digit=String(v[l]);str+=zeros.slice(digit.length)+digit}var sign=this.sign?"-":"";return sign+str};SmallInteger.prototype.toString=function(radix,alphabet){if(radix===undefined)radix=10;if(radix!=10)return toBaseString(this,radix,alphabet);return String(this.value)};NativeBigInt.prototype.toString=SmallInteger.prototype.toString;NativeBigInt.prototype.toJSON=BigInteger.prototype.toJSON=SmallInteger.prototype.toJSON=function(){return this.toString()};BigInteger.prototype.valueOf=function(){return parseInt(this.toString(),10)};BigInteger.prototype.toJSNumber=BigInteger.prototype.valueOf;SmallInteger.prototype.valueOf=function(){return this.value};SmallInteger.prototype.toJSNumber=SmallInteger.prototype.valueOf;NativeBigInt.prototype.valueOf=NativeBigInt.prototype.toJSNumber=function(){return parseInt(this.toString(),10)};function parseStringValue(v){if(isPrecise(+v)){var x=+v;if(x===truncate(x))return supportsNativeBigInt?new NativeBigInt(BigInt(x)):new SmallInteger(x);throw new Error("Invalid integer: "+v)}var sign=v[0]==="-";if(sign)v=v.slice(1);var split=v.split(/e/i);if(split.length>2)throw new Error("Invalid integer: "+split.join("e"));if(split.length===2){var exp=split[1];if(exp[0]==="+")exp=exp.slice(1);exp=+exp;if(exp!==truncate(exp)||!isPrecise(exp))throw new Error("Invalid integer: "+exp+" is not a valid exponent.");var text=split[0];var decimalPlace=text.indexOf(".");if(decimalPlace>=0){exp-=text.length-decimalPlace-1;text=text.slice(0,decimalPlace)+text.slice(decimalPlace+1)}if(exp<0)throw new Error("Cannot include negative exponent part for integers");text+=new Array(exp+1).join("0");v=text}var isValid=/^([0-9][0-9]*)$/.test(v);if(!isValid)throw new Error("Invalid integer: "+v);if(supportsNativeBigInt){return new NativeBigInt(BigInt(sign?"-"+v:v))}var r=[],max=v.length,l=LOG_BASE,min=max-l;while(max>0){r.push(+v.slice(min,max));min-=l;if(min<0)min=0;max-=l}trim(r);return new BigInteger(r,sign)}function parseNumberValue(v){if(supportsNativeBigInt){return new NativeBigInt(BigInt(v))}if(isPrecise(v)){if(v!==truncate(v))throw new Error(v+" is not an integer.");return new SmallInteger(v)}return parseStringValue(v.toString())}function parseValue(v){if(typeof v==="number"){return parseNumberValue(v)}if(typeof v==="string"){return parseStringValue(v)}if(typeof v==="bigint"){return new NativeBigInt(v)}return v}for(var i=0;i<1e3;i++){Integer[i]=parseValue(i);if(i>0)Integer[-i]=parseValue(-i)}Integer.one=Integer[1];Integer.zero=Integer[0];Integer.minusOne=Integer[-1];Integer.max=max;Integer.min=min;Integer.gcd=gcd;Integer.lcm=lcm;Integer.isInstance=function(x){return x instanceof BigInteger||x instanceof SmallInteger||x instanceof NativeBigInt};Integer.randBetween=randBetween;Integer.fromArray=function(digits,base,isNegative){return parseBaseFromArray(digits.map(parseValue),parseValue(base||10),isNegative)};return Integer}();if(typeof module!=="undefined"&&module.hasOwnProperty("exports")){module.exports=bigInt}if(typeof define==="function"&&define.amd){define(function(){return bigInt})} \ No newline at end of file diff --git a/sonorancad/node_modules/big-integer/tsconfig.json b/sonorancad/node_modules/big-integer/tsconfig.json index bb8e6cf..dae01d4 100644 --- a/sonorancad/node_modules/big-integer/tsconfig.json +++ b/sonorancad/node_modules/big-integer/tsconfig.json @@ -14,7 +14,9 @@ "typeRoots": [ "./" ], - "types": [], + "types": [ + "node" + ], "forceConsistentCasingInFileNames": true }, "files": [ diff --git a/sonorancad/node_modules/glob/common.js b/sonorancad/node_modules/glob/common.js index 424c46e..8e363b6 100644 --- a/sonorancad/node_modules/glob/common.js +++ b/sonorancad/node_modules/glob/common.js @@ -110,8 +110,6 @@ function setopts (self, pattern, options) { // Note that they are not supported in Glob itself anyway. options.nonegate = true options.nocomment = true - // always treat \ in patterns as escapes, not path separators - options.allowWindowsEscape = false self.minimatch = new Minimatch(pattern, options) self.options = self.minimatch.options diff --git a/sonorancad/node_modules/glob/glob.js b/sonorancad/node_modules/glob/glob.js index 37a4d7e..afcf827 100644 --- a/sonorancad/node_modules/glob/glob.js +++ b/sonorancad/node_modules/glob/glob.js @@ -342,10 +342,7 @@ Glob.prototype._process = function (pattern, index, inGlobStar, cb) { var read if (prefix === null) read = '.' - else if (isAbsolute(prefix) || - isAbsolute(pattern.map(function (p) { - return typeof p === 'string' ? p : '[*]' - }).join('/'))) { + else if (isAbsolute(prefix) || isAbsolute(pattern.join('/'))) { if (!prefix || !isAbsolute(prefix)) prefix = '/' + prefix read = prefix diff --git a/sonorancad/node_modules/glob/sync.js b/sonorancad/node_modules/glob/sync.js index 2c4f480..4f46f90 100644 --- a/sonorancad/node_modules/glob/sync.js +++ b/sonorancad/node_modules/glob/sync.js @@ -48,7 +48,7 @@ function GlobSync (pattern, options) { } GlobSync.prototype._finish = function () { - assert.ok(this instanceof GlobSync) + assert(this instanceof GlobSync) if (this.realpath) { var self = this this.matches.forEach(function (matchset, index) { @@ -72,7 +72,7 @@ GlobSync.prototype._finish = function () { GlobSync.prototype._process = function (pattern, index, inGlobStar) { - assert.ok(this instanceof GlobSync) + assert(this instanceof GlobSync) // Get the first [n] parts of pattern that are all strings. var n = 0 @@ -109,10 +109,7 @@ GlobSync.prototype._process = function (pattern, index, inGlobStar) { var read if (prefix === null) read = '.' - else if (isAbsolute(prefix) || - isAbsolute(pattern.map(function (p) { - return typeof p === 'string' ? p : '[*]' - }).join('/'))) { + else if (isAbsolute(prefix) || isAbsolute(pattern.join('/'))) { if (!prefix || !isAbsolute(prefix)) prefix = '/' + prefix read = prefix diff --git a/sonorancad/node_modules/graceful-fs/LICENSE b/sonorancad/node_modules/graceful-fs/LICENSE index e906a25..9d2c803 100644 --- a/sonorancad/node_modules/graceful-fs/LICENSE +++ b/sonorancad/node_modules/graceful-fs/LICENSE @@ -1,6 +1,6 @@ The ISC License -Copyright (c) 2011-2022 Isaac Z. Schlueter, Ben Noordhuis, and Contributors +Copyright (c) Isaac Z. Schlueter, Ben Noordhuis, and Contributors Permission to use, copy, modify, and/or distribute this software for any purpose with or without fee is hereby granted, provided that the above diff --git a/sonorancad/node_modules/graceful-fs/graceful-fs.js b/sonorancad/node_modules/graceful-fs/graceful-fs.js index 8d5b89e..947cd94 100644 --- a/sonorancad/node_modules/graceful-fs/graceful-fs.js +++ b/sonorancad/node_modules/graceful-fs/graceful-fs.js @@ -191,35 +191,16 @@ function patch (fs) { var fs$readdir = fs.readdir fs.readdir = readdir - var noReaddirOptionVersions = /^v[0-5]\./ function readdir (path, options, cb) { if (typeof options === 'function') cb = options, options = null - var go$readdir = noReaddirOptionVersions.test(process.version) - ? function go$readdir (path, options, cb, startTime) { - return fs$readdir(path, fs$readdirCallback( - path, options, cb, startTime - )) - } - : function go$readdir (path, options, cb, startTime) { - return fs$readdir(path, options, fs$readdirCallback( - path, options, cb, startTime - )) - } - return go$readdir(path, options, cb) - function fs$readdirCallback (path, options, cb, startTime) { - return function (err, files) { + function go$readdir (path, options, cb, startTime) { + return fs$readdir(path, options, function (err, files) { if (err && (err.code === 'EMFILE' || err.code === 'ENFILE')) - enqueue([ - go$readdir, - [path, options, cb], - err, - startTime || Date.now(), - Date.now() - ]) + enqueue([go$readdir, [path, options, cb], err, startTime || Date.now(), Date.now()]) else { if (files && files.sort) files.sort() @@ -227,7 +208,7 @@ function patch (fs) { if (typeof cb === 'function') cb.call(this, err, files) } - } + }) } } diff --git a/sonorancad/node_modules/graceful-fs/polyfills.js b/sonorancad/node_modules/graceful-fs/polyfills.js index 453f1a9..1287da1 100644 --- a/sonorancad/node_modules/graceful-fs/polyfills.js +++ b/sonorancad/node_modules/graceful-fs/polyfills.js @@ -71,13 +71,13 @@ function patch (fs) { fs.lstatSync = statFixSync(fs.lstatSync) // if lchmod/lchown do not exist, then make them no-ops - if (fs.chmod && !fs.lchmod) { + if (!fs.lchmod) { fs.lchmod = function (path, mode, cb) { if (cb) process.nextTick(cb) } fs.lchmodSync = function () {} } - if (fs.chown && !fs.lchown) { + if (!fs.lchown) { fs.lchown = function (path, uid, gid, cb) { if (cb) process.nextTick(cb) } @@ -94,38 +94,32 @@ function patch (fs) { // CPU to a busy looping process, which can cause the program causing the lock // contention to be starved of CPU by node, so the contention doesn't resolve. if (platform === "win32") { - fs.rename = typeof fs.rename !== 'function' ? fs.rename - : (function (fs$rename) { - function rename (from, to, cb) { - var start = Date.now() - var backoff = 0; - fs$rename(from, to, function CB (er) { - if (er - && (er.code === "EACCES" || er.code === "EPERM" || er.code === "EBUSY") - && Date.now() - start < 60000) { - setTimeout(function() { - fs.stat(to, function (stater, st) { - if (stater && stater.code === "ENOENT") - fs$rename(from, to, CB); - else - cb(er) - }) - }, backoff) - if (backoff < 100) - backoff += 10; - return; - } - if (cb) cb(er) - }) - } - if (Object.setPrototypeOf) Object.setPrototypeOf(rename, fs$rename) - return rename - })(fs.rename) + fs.rename = (function (fs$rename) { return function (from, to, cb) { + var start = Date.now() + var backoff = 0; + fs$rename(from, to, function CB (er) { + if (er + && (er.code === "EACCES" || er.code === "EPERM") + && Date.now() - start < 60000) { + setTimeout(function() { + fs.stat(to, function (stater, st) { + if (stater && stater.code === "ENOENT") + fs$rename(from, to, CB); + else + cb(er) + }) + }, backoff) + if (backoff < 100) + backoff += 10; + return; + } + if (cb) cb(er) + }) + }})(fs.rename) } // if read() returns EAGAIN, then just try it again. - fs.read = typeof fs.read !== 'function' ? fs.read - : (function (fs$read) { + fs.read = (function (fs$read) { function read (fd, buffer, offset, length, position, callback_) { var callback if (callback_ && typeof callback_ === 'function') { @@ -146,8 +140,7 @@ function patch (fs) { return read })(fs.read) - fs.readSync = typeof fs.readSync !== 'function' ? fs.readSync - : (function (fs$readSync) { return function (fd, buffer, offset, length, position) { + fs.readSync = (function (fs$readSync) { return function (fd, buffer, offset, length, position) { var eagCounter = 0 while (true) { try { @@ -206,7 +199,7 @@ function patch (fs) { } function patchLutimes (fs) { - if (constants.hasOwnProperty("O_SYMLINK") && fs.futimes) { + if (constants.hasOwnProperty("O_SYMLINK")) { fs.lutimes = function (path, at, mt, cb) { fs.open(path, constants.O_SYMLINK, function (er, fd) { if (er) { @@ -240,7 +233,7 @@ function patch (fs) { return ret } - } else if (fs.futimes) { + } else { fs.lutimes = function (_a, _b, _c, cb) { if (cb) process.nextTick(cb) } fs.lutimesSync = function () {} } @@ -317,10 +310,8 @@ function patch (fs) { return function (target, options) { var stats = options ? orig.call(fs, target, options) : orig.call(fs, target) - if (stats) { - if (stats.uid < 0) stats.uid += 0x100000000 - if (stats.gid < 0) stats.gid += 0x100000000 - } + if (stats.uid < 0) stats.uid += 0x100000000 + if (stats.gid < 0) stats.gid += 0x100000000 return stats; } } diff --git a/sonorancad/node_modules/minimatch/README.md b/sonorancad/node_modules/minimatch/README.md index 33ede1d..ad72b81 100644 --- a/sonorancad/node_modules/minimatch/README.md +++ b/sonorancad/node_modules/minimatch/README.md @@ -2,7 +2,7 @@ A minimal matching utility. -[![Build Status](https://travis-ci.org/isaacs/minimatch.svg?branch=master)](http://travis-ci.org/isaacs/minimatch) +[![Build Status](https://secure.travis-ci.org/isaacs/minimatch.svg)](http://travis-ci.org/isaacs/minimatch) This is the matching library used internally by npm. @@ -171,27 +171,6 @@ Suppress the behavior of treating a leading `!` character as negation. Returns from negate expressions the same as if they were not negated. (Ie, true on a hit, false on a miss.) -### partial - -Compare a partial path to a pattern. As long as the parts of the path that -are present are not contradicted by the pattern, it will be treated as a -match. This is useful in applications where you're walking through a -folder structure, and don't yet have the full path, but want to ensure that -you do not walk down paths that can never be a match. - -For example, - -```js -minimatch('/a/b', '/a/*/c/d', { partial: true }) // true, might be /a/b/c/d -minimatch('/a/b', '/**/d', { partial: true }) // true, might be /a/b/.../d -minimatch('/x/y/z', '/a/**/z', { partial: true }) // false, because x !== a -``` - -### allowWindowsEscape - -Windows path separator `\` is by default converted to `/`, which -prohibits the usage of `\` as a escape character. This flag skips that -behavior and allows using the escape character. ## Comparisons to other fnmatch/glob implementations diff --git a/sonorancad/node_modules/minimatch/minimatch.js b/sonorancad/node_modules/minimatch/minimatch.js index fda45ad..5b5f8cf 100644 --- a/sonorancad/node_modules/minimatch/minimatch.js +++ b/sonorancad/node_modules/minimatch/minimatch.js @@ -1,10 +1,10 @@ module.exports = minimatch minimatch.Minimatch = Minimatch -var path = (function () { try { return require('path') } catch (e) {}}()) || { - sep: '/' -} -minimatch.sep = path.sep +var path = { sep: '/' } +try { + path = require('path') +} catch (er) {} var GLOBSTAR = minimatch.GLOBSTAR = Minimatch.GLOBSTAR = {} var expand = require('brace-expansion') @@ -56,64 +56,43 @@ function filter (pattern, options) { } function ext (a, b) { + a = a || {} b = b || {} var t = {} - Object.keys(a).forEach(function (k) { - t[k] = a[k] - }) Object.keys(b).forEach(function (k) { t[k] = b[k] }) + Object.keys(a).forEach(function (k) { + t[k] = a[k] + }) return t } minimatch.defaults = function (def) { - if (!def || typeof def !== 'object' || !Object.keys(def).length) { - return minimatch - } + if (!def || !Object.keys(def).length) return minimatch var orig = minimatch var m = function minimatch (p, pattern, options) { - return orig(p, pattern, ext(def, options)) + return orig.minimatch(p, pattern, ext(def, options)) } m.Minimatch = function Minimatch (pattern, options) { return new orig.Minimatch(pattern, ext(def, options)) } - m.Minimatch.defaults = function defaults (options) { - return orig.defaults(ext(def, options)).Minimatch - } - - m.filter = function filter (pattern, options) { - return orig.filter(pattern, ext(def, options)) - } - - m.defaults = function defaults (options) { - return orig.defaults(ext(def, options)) - } - - m.makeRe = function makeRe (pattern, options) { - return orig.makeRe(pattern, ext(def, options)) - } - - m.braceExpand = function braceExpand (pattern, options) { - return orig.braceExpand(pattern, ext(def, options)) - } - - m.match = function (list, pattern, options) { - return orig.match(list, pattern, ext(def, options)) - } return m } Minimatch.defaults = function (def) { + if (!def || !Object.keys(def).length) return Minimatch return minimatch.defaults(def).Minimatch } function minimatch (p, pattern, options) { - assertValidPattern(pattern) + if (typeof pattern !== 'string') { + throw new TypeError('glob pattern string required') + } if (!options) options = {} @@ -122,6 +101,9 @@ function minimatch (p, pattern, options) { return false } + // "" only matches "" + if (pattern.trim() === '') return p === '' + return new Minimatch(pattern, options).match(p) } @@ -130,14 +112,15 @@ function Minimatch (pattern, options) { return new Minimatch(pattern, options) } - assertValidPattern(pattern) + if (typeof pattern !== 'string') { + throw new TypeError('glob pattern string required') + } if (!options) options = {} - pattern = pattern.trim() // windows support: need to use /, not \ - if (!options.allowWindowsEscape && path.sep !== '/') { + if (path.sep !== '/') { pattern = pattern.split(path.sep).join('/') } @@ -148,7 +131,6 @@ function Minimatch (pattern, options) { this.negate = false this.comment = false this.empty = false - this.partial = !!options.partial // make the set of regexps etc. this.make() @@ -158,6 +140,9 @@ Minimatch.prototype.debug = function () {} Minimatch.prototype.make = make function make () { + // don't do it more than once. + if (this._made) return + var pattern = this.pattern var options = this.options @@ -177,7 +162,7 @@ function make () { // step 2: expand braces var set = this.globSet = this.braceExpand() - if (options.debug) this.debug = function debug() { console.error.apply(console, arguments) } + if (options.debug) this.debug = console.error this.debug(this.pattern, set) @@ -257,11 +242,12 @@ function braceExpand (pattern, options) { pattern = typeof pattern === 'undefined' ? this.pattern : pattern - assertValidPattern(pattern) + if (typeof pattern === 'undefined') { + throw new TypeError('undefined pattern') + } - // Thanks to Yeting Li for - // improving this regexp to avoid a ReDOS vulnerability. - if (options.nobrace || !/\{(?:(?!\{).)*\}/.test(pattern)) { + if (options.nobrace || + !pattern.match(/\{.*\}/)) { // shortcut. no need to expand. return [pattern] } @@ -269,17 +255,6 @@ function braceExpand (pattern, options) { return expand(pattern) } -var MAX_PATTERN_LENGTH = 1024 * 64 -var assertValidPattern = function (pattern) { - if (typeof pattern !== 'string') { - throw new TypeError('invalid pattern') - } - - if (pattern.length > MAX_PATTERN_LENGTH) { - throw new TypeError('pattern is too long') - } -} - // parse a component of the expanded set. // At this point, no pattern may contain "/" in it // so we're going to return a 2d array, where each entry is the full @@ -294,17 +269,14 @@ var assertValidPattern = function (pattern) { Minimatch.prototype.parse = parse var SUBPARSE = {} function parse (pattern, isSub) { - assertValidPattern(pattern) + if (pattern.length > 1024 * 64) { + throw new TypeError('pattern is too long') + } var options = this.options // shortcuts - if (pattern === '**') { - if (!options.noglobstar) - return GLOBSTAR - else - pattern = '*' - } + if (!options.noglobstar && pattern === '**') return GLOBSTAR if (pattern === '') return '' var re = '' @@ -360,12 +332,10 @@ function parse (pattern, isSub) { } switch (c) { - /* istanbul ignore next */ - case '/': { + case '/': // completely not allowed, even escaped. // Should already be path-split by now. return false - } case '\\': clearStateChar() @@ -484,23 +454,25 @@ function parse (pattern, isSub) { // handle the case where we left a class open. // "[z-a]" is valid, equivalent to "\[z-a\]" - // split where the last [ was, make sure we don't have - // an invalid re. if so, re-walk the contents of the - // would-be class to re-translate any characters that - // were passed through as-is - // TODO: It would probably be faster to determine this - // without a try/catch and a new RegExp, but it's tricky - // to do safely. For now, this is safe and works. - var cs = pattern.substring(classStart + 1, i) - try { - RegExp('[' + cs + ']') - } catch (er) { - // not a valid class! - var sp = this.parse(cs, SUBPARSE) - re = re.substr(0, reClassStart) + '\\[' + sp[0] + '\\]' - hasMagic = hasMagic || sp[1] - inClass = false - continue + if (inClass) { + // split where the last [ was, make sure we don't have + // an invalid re. if so, re-walk the contents of the + // would-be class to re-translate any characters that + // were passed through as-is + // TODO: It would probably be faster to determine this + // without a try/catch and a new RegExp, but it's tricky + // to do safely. For now, this is safe and works. + var cs = pattern.substring(classStart + 1, i) + try { + RegExp('[' + cs + ']') + } catch (er) { + // not a valid class! + var sp = this.parse(cs, SUBPARSE) + re = re.substr(0, reClassStart) + '\\[' + sp[0] + '\\]' + hasMagic = hasMagic || sp[1] + inClass = false + continue + } } // finish up the class. @@ -584,7 +556,9 @@ function parse (pattern, isSub) { // something that could conceivably capture a dot var addPatternStart = false switch (re.charAt(0)) { - case '[': case '.': case '(': addPatternStart = true + case '.': + case '[': + case '(': addPatternStart = true } // Hack to work around lack of negative lookbehind in JS @@ -646,7 +620,7 @@ function parse (pattern, isSub) { var flags = options.nocase ? 'i' : '' try { var regExp = new RegExp('^' + re + '$', flags) - } catch (er) /* istanbul ignore next - should be impossible */ { + } catch (er) { // If it was an invalid regular expression, then it can't match // anything. This trick looks for a character after the end of // the string, which is of course impossible, except in multi-line @@ -704,7 +678,7 @@ function makeRe () { try { this.regexp = new RegExp(re, flags) - } catch (ex) /* istanbul ignore next - should be impossible */ { + } catch (ex) { this.regexp = false } return this.regexp @@ -722,8 +696,8 @@ minimatch.match = function (list, pattern, options) { return list } -Minimatch.prototype.match = function match (f, partial) { - if (typeof partial === 'undefined') partial = this.partial +Minimatch.prototype.match = match +function match (f, partial) { this.debug('match', f, this.pattern) // short-circuit in the case of busted things. // comments, etc. @@ -805,7 +779,6 @@ Minimatch.prototype.matchOne = function (file, pattern, partial) { // should be impossible. // some invalid regexp stuff in the set. - /* istanbul ignore if */ if (p === false) return false if (p === GLOBSTAR) { @@ -879,7 +852,6 @@ Minimatch.prototype.matchOne = function (file, pattern, partial) { // no match was found. // However, in partial mode, we can't say this is necessarily over. // If there's more *pattern* left, then - /* istanbul ignore if */ if (partial) { // ran out of file this.debug('\n>>> no match, partial?', file, fr, pattern, pr) @@ -893,7 +865,11 @@ Minimatch.prototype.matchOne = function (file, pattern, partial) { // patterns with magic have been turned into regexps. var hit if (typeof p === 'string') { - hit = f === p + if (options.nocase) { + hit = f.toLowerCase() === p.toLowerCase() + } else { + hit = f === p + } this.debug('string match', p, f, hit) } else { hit = f.match(p) @@ -924,16 +900,16 @@ Minimatch.prototype.matchOne = function (file, pattern, partial) { // this is ok if we're doing the match as part of // a glob fs traversal. return partial - } else /* istanbul ignore else */ if (pi === pl) { + } else if (pi === pl) { // ran out of pattern, still have file left. // this is only acceptable if we're on the very last // empty segment of a file with a trailing slash. // a/* should match a/b/ - return (fi === fl - 1) && (file[fi] === '') + var emptyFileEnd = (fi === fl - 1) && (file[fi] === '') + return emptyFileEnd } // should be unreachable. - /* istanbul ignore next */ throw new Error('wtf?') } diff --git a/sonorancad/node_modules/minimist/.travis.yml b/sonorancad/node_modules/minimist/.travis.yml new file mode 100644 index 0000000..74c57bf --- /dev/null +++ b/sonorancad/node_modules/minimist/.travis.yml @@ -0,0 +1,8 @@ +language: node_js +node_js: + - "0.8" + - "0.10" + - "0.12" + - "iojs" +before_install: + - npm install -g npm@~1.4.6 diff --git a/sonorancad/node_modules/minimist/example/parse.js b/sonorancad/node_modules/minimist/example/parse.js index 9d90ffb..f7c8d49 100644 --- a/sonorancad/node_modules/minimist/example/parse.js +++ b/sonorancad/node_modules/minimist/example/parse.js @@ -1,4 +1,2 @@ -'use strict'; - var argv = require('../')(process.argv.slice(2)); console.log(argv); diff --git a/sonorancad/node_modules/minimist/index.js b/sonorancad/node_modules/minimist/index.js index f020f39..d2afe5e 100644 --- a/sonorancad/node_modules/minimist/index.js +++ b/sonorancad/node_modules/minimist/index.js @@ -1,263 +1,245 @@ -'use strict'; +module.exports = function (args, opts) { + if (!opts) opts = {}; + + var flags = { bools : {}, strings : {}, unknownFn: null }; + + if (typeof opts['unknown'] === 'function') { + flags.unknownFn = opts['unknown']; + } + + if (typeof opts['boolean'] === 'boolean' && opts['boolean']) { + flags.allBools = true; + } else { + [].concat(opts['boolean']).filter(Boolean).forEach(function (key) { + flags.bools[key] = true; + }); + } + + var aliases = {}; + Object.keys(opts.alias || {}).forEach(function (key) { + aliases[key] = [].concat(opts.alias[key]); + aliases[key].forEach(function (x) { + aliases[x] = [key].concat(aliases[key].filter(function (y) { + return x !== y; + })); + }); + }); + + [].concat(opts.string).filter(Boolean).forEach(function (key) { + flags.strings[key] = true; + if (aliases[key]) { + flags.strings[aliases[key]] = true; + } + }); + + var defaults = opts['default'] || {}; + + var argv = { _ : [] }; + Object.keys(flags.bools).forEach(function (key) { + setArg(key, defaults[key] === undefined ? false : defaults[key]); + }); + + var notFlags = []; + + if (args.indexOf('--') !== -1) { + notFlags = args.slice(args.indexOf('--')+1); + args = args.slice(0, args.indexOf('--')); + } + + function argDefined(key, arg) { + return (flags.allBools && /^--[^=]+$/.test(arg)) || + flags.strings[key] || flags.bools[key] || aliases[key]; + } + + function setArg (key, val, arg) { + if (arg && flags.unknownFn && !argDefined(key, arg)) { + if (flags.unknownFn(arg) === false) return; + } + + var value = !flags.strings[key] && isNumber(val) + ? Number(val) : val + ; + setKey(argv, key.split('.'), value); + + (aliases[key] || []).forEach(function (x) { + setKey(argv, x.split('.'), value); + }); + } + + function setKey (obj, keys, value) { + var o = obj; + for (var i = 0; i < keys.length-1; i++) { + var key = keys[i]; + if (key === '__proto__') return; + if (o[key] === undefined) o[key] = {}; + if (o[key] === Object.prototype || o[key] === Number.prototype + || o[key] === String.prototype) o[key] = {}; + if (o[key] === Array.prototype) o[key] = []; + o = o[key]; + } + + var key = keys[keys.length - 1]; + if (key === '__proto__') return; + if (o === Object.prototype || o === Number.prototype + || o === String.prototype) o = {}; + if (o === Array.prototype) o = []; + if (o[key] === undefined || flags.bools[key] || typeof o[key] === 'boolean') { + o[key] = value; + } + else if (Array.isArray(o[key])) { + o[key].push(value); + } + else { + o[key] = [ o[key], value ]; + } + } + + function aliasIsBoolean(key) { + return aliases[key].some(function (x) { + return flags.bools[x]; + }); + } + + for (var i = 0; i < args.length; i++) { + var arg = args[i]; + + if (/^--.+=/.test(arg)) { + // Using [\s\S] instead of . because js doesn't support the + // 'dotall' regex modifier. See: + // http://stackoverflow.com/a/1068308/13216 + var m = arg.match(/^--([^=]+)=([\s\S]*)$/); + var key = m[1]; + var value = m[2]; + if (flags.bools[key]) { + value = value !== 'false'; + } + setArg(key, value, arg); + } + else if (/^--no-.+/.test(arg)) { + var key = arg.match(/^--no-(.+)/)[1]; + setArg(key, false, arg); + } + else if (/^--.+/.test(arg)) { + var key = arg.match(/^--(.+)/)[1]; + var next = args[i + 1]; + if (next !== undefined && !/^-/.test(next) + && !flags.bools[key] + && !flags.allBools + && (aliases[key] ? !aliasIsBoolean(key) : true)) { + setArg(key, next, arg); + i++; + } + else if (/^(true|false)$/.test(next)) { + setArg(key, next === 'true', arg); + i++; + } + else { + setArg(key, flags.strings[key] ? '' : true, arg); + } + } + else if (/^-[^-]+/.test(arg)) { + var letters = arg.slice(1,-1).split(''); + + var broken = false; + for (var j = 0; j < letters.length; j++) { + var next = arg.slice(j+2); + + if (next === '-') { + setArg(letters[j], next, arg) + continue; + } + + if (/[A-Za-z]/.test(letters[j]) && /=/.test(next)) { + setArg(letters[j], next.split('=')[1], arg); + broken = true; + break; + } + + if (/[A-Za-z]/.test(letters[j]) + && /-?\d+(\.\d*)?(e-?\d+)?$/.test(next)) { + setArg(letters[j], next, arg); + broken = true; + break; + } + + if (letters[j+1] && letters[j+1].match(/\W/)) { + setArg(letters[j], arg.slice(j+2), arg); + broken = true; + break; + } + else { + setArg(letters[j], flags.strings[letters[j]] ? '' : true, arg); + } + } + + var key = arg.slice(-1)[0]; + if (!broken && key !== '-') { + if (args[i+1] && !/^(-|--)[^-]/.test(args[i+1]) + && !flags.bools[key] + && (aliases[key] ? !aliasIsBoolean(key) : true)) { + setArg(key, args[i+1], arg); + i++; + } + else if (args[i+1] && /^(true|false)$/.test(args[i+1])) { + setArg(key, args[i+1] === 'true', arg); + i++; + } + else { + setArg(key, flags.strings[key] ? '' : true, arg); + } + } + } + else { + if (!flags.unknownFn || flags.unknownFn(arg) !== false) { + argv._.push( + flags.strings['_'] || !isNumber(arg) ? arg : Number(arg) + ); + } + if (opts.stopEarly) { + argv._.push.apply(argv._, args.slice(i + 1)); + break; + } + } + } + + Object.keys(defaults).forEach(function (key) { + if (!hasKey(argv, key.split('.'))) { + setKey(argv, key.split('.'), defaults[key]); + + (aliases[key] || []).forEach(function (x) { + setKey(argv, x.split('.'), defaults[key]); + }); + } + }); + + if (opts['--']) { + argv['--'] = new Array(); + notFlags.forEach(function(key) { + argv['--'].push(key); + }); + } + else { + notFlags.forEach(function(key) { + argv._.push(key); + }); + } + + return argv; +}; -function hasKey(obj, keys) { - var o = obj; - keys.slice(0, -1).forEach(function (key) { - o = o[key] || {}; - }); +function hasKey (obj, keys) { + var o = obj; + keys.slice(0,-1).forEach(function (key) { + o = (o[key] || {}); + }); - var key = keys[keys.length - 1]; - return key in o; + var key = keys[keys.length - 1]; + return key in o; } -function isNumber(x) { - if (typeof x === 'number') { return true; } - if ((/^0x[0-9a-f]+$/i).test(x)) { return true; } - return (/^[-+]?(?:\d+(?:\.\d*)?|\.\d+)(e[-+]?\d+)?$/).test(x); +function isNumber (x) { + if (typeof x === 'number') return true; + if (/^0x[0-9a-f]+$/i.test(x)) return true; + return /^[-+]?(?:\d+(?:\.\d*)?|\.\d+)(e[-+]?\d+)?$/.test(x); } -function isConstructorOrProto(obj, key) { - return (key === 'constructor' && typeof obj[key] === 'function') || key === '__proto__'; -} - -module.exports = function (args, opts) { - if (!opts) { opts = {}; } - - var flags = { - bools: {}, - strings: {}, - unknownFn: null, - }; - - if (typeof opts.unknown === 'function') { - flags.unknownFn = opts.unknown; - } - - if (typeof opts.boolean === 'boolean' && opts.boolean) { - flags.allBools = true; - } else { - [].concat(opts.boolean).filter(Boolean).forEach(function (key) { - flags.bools[key] = true; - }); - } - - var aliases = {}; - - function aliasIsBoolean(key) { - return aliases[key].some(function (x) { - return flags.bools[x]; - }); - } - - Object.keys(opts.alias || {}).forEach(function (key) { - aliases[key] = [].concat(opts.alias[key]); - aliases[key].forEach(function (x) { - aliases[x] = [key].concat(aliases[key].filter(function (y) { - return x !== y; - })); - }); - }); - - [].concat(opts.string).filter(Boolean).forEach(function (key) { - flags.strings[key] = true; - if (aliases[key]) { - [].concat(aliases[key]).forEach(function (k) { - flags.strings[k] = true; - }); - } - }); - - var defaults = opts.default || {}; - - var argv = { _: [] }; - - function argDefined(key, arg) { - return (flags.allBools && (/^--[^=]+$/).test(arg)) - || flags.strings[key] - || flags.bools[key] - || aliases[key]; - } - - function setKey(obj, keys, value) { - var o = obj; - for (var i = 0; i < keys.length - 1; i++) { - var key = keys[i]; - if (isConstructorOrProto(o, key)) { return; } - if (o[key] === undefined) { o[key] = {}; } - if ( - o[key] === Object.prototype - || o[key] === Number.prototype - || o[key] === String.prototype - ) { - o[key] = {}; - } - if (o[key] === Array.prototype) { o[key] = []; } - o = o[key]; - } - - var lastKey = keys[keys.length - 1]; - if (isConstructorOrProto(o, lastKey)) { return; } - if ( - o === Object.prototype - || o === Number.prototype - || o === String.prototype - ) { - o = {}; - } - if (o === Array.prototype) { o = []; } - if (o[lastKey] === undefined || flags.bools[lastKey] || typeof o[lastKey] === 'boolean') { - o[lastKey] = value; - } else if (Array.isArray(o[lastKey])) { - o[lastKey].push(value); - } else { - o[lastKey] = [o[lastKey], value]; - } - } - - function setArg(key, val, arg) { - if (arg && flags.unknownFn && !argDefined(key, arg)) { - if (flags.unknownFn(arg) === false) { return; } - } - - var value = !flags.strings[key] && isNumber(val) - ? Number(val) - : val; - setKey(argv, key.split('.'), value); - - (aliases[key] || []).forEach(function (x) { - setKey(argv, x.split('.'), value); - }); - } - - Object.keys(flags.bools).forEach(function (key) { - setArg(key, defaults[key] === undefined ? false : defaults[key]); - }); - - var notFlags = []; - - if (args.indexOf('--') !== -1) { - notFlags = args.slice(args.indexOf('--') + 1); - args = args.slice(0, args.indexOf('--')); - } - - for (var i = 0; i < args.length; i++) { - var arg = args[i]; - var key; - var next; - - if ((/^--.+=/).test(arg)) { - // Using [\s\S] instead of . because js doesn't support the - // 'dotall' regex modifier. See: - // http://stackoverflow.com/a/1068308/13216 - var m = arg.match(/^--([^=]+)=([\s\S]*)$/); - key = m[1]; - var value = m[2]; - if (flags.bools[key]) { - value = value !== 'false'; - } - setArg(key, value, arg); - } else if ((/^--no-.+/).test(arg)) { - key = arg.match(/^--no-(.+)/)[1]; - setArg(key, false, arg); - } else if ((/^--.+/).test(arg)) { - key = arg.match(/^--(.+)/)[1]; - next = args[i + 1]; - if ( - next !== undefined - && !(/^(-|--)[^-]/).test(next) - && !flags.bools[key] - && !flags.allBools - && (aliases[key] ? !aliasIsBoolean(key) : true) - ) { - setArg(key, next, arg); - i += 1; - } else if ((/^(true|false)$/).test(next)) { - setArg(key, next === 'true', arg); - i += 1; - } else { - setArg(key, flags.strings[key] ? '' : true, arg); - } - } else if ((/^-[^-]+/).test(arg)) { - var letters = arg.slice(1, -1).split(''); - - var broken = false; - for (var j = 0; j < letters.length; j++) { - next = arg.slice(j + 2); - - if (next === '-') { - setArg(letters[j], next, arg); - continue; - } - - if ((/[A-Za-z]/).test(letters[j]) && next[0] === '=') { - setArg(letters[j], next.slice(1), arg); - broken = true; - break; - } - - if ( - (/[A-Za-z]/).test(letters[j]) - && (/-?\d+(\.\d*)?(e-?\d+)?$/).test(next) - ) { - setArg(letters[j], next, arg); - broken = true; - break; - } - - if (letters[j + 1] && letters[j + 1].match(/\W/)) { - setArg(letters[j], arg.slice(j + 2), arg); - broken = true; - break; - } else { - setArg(letters[j], flags.strings[letters[j]] ? '' : true, arg); - } - } - - key = arg.slice(-1)[0]; - if (!broken && key !== '-') { - if ( - args[i + 1] - && !(/^(-|--)[^-]/).test(args[i + 1]) - && !flags.bools[key] - && (aliases[key] ? !aliasIsBoolean(key) : true) - ) { - setArg(key, args[i + 1], arg); - i += 1; - } else if (args[i + 1] && (/^(true|false)$/).test(args[i + 1])) { - setArg(key, args[i + 1] === 'true', arg); - i += 1; - } else { - setArg(key, flags.strings[key] ? '' : true, arg); - } - } - } else { - if (!flags.unknownFn || flags.unknownFn(arg) !== false) { - argv._.push(flags.strings._ || !isNumber(arg) ? arg : Number(arg)); - } - if (opts.stopEarly) { - argv._.push.apply(argv._, args.slice(i + 1)); - break; - } - } - } - - Object.keys(defaults).forEach(function (k) { - if (!hasKey(argv, k.split('.'))) { - setKey(argv, k.split('.'), defaults[k]); - - (aliases[k] || []).forEach(function (x) { - setKey(argv, x.split('.'), defaults[k]); - }); - } - }); - - if (opts['--']) { - argv['--'] = notFlags.slice(); - } else { - notFlags.forEach(function (k) { - argv._.push(k); - }); - } - - return argv; -}; diff --git a/sonorancad/node_modules/minimist/readme.markdown b/sonorancad/node_modules/minimist/readme.markdown new file mode 100644 index 0000000..5fd97ab --- /dev/null +++ b/sonorancad/node_modules/minimist/readme.markdown @@ -0,0 +1,95 @@ +# minimist + +parse argument options + +This module is the guts of optimist's argument parser without all the +fanciful decoration. + +# example + +``` js +var argv = require('minimist')(process.argv.slice(2)); +console.log(argv); +``` + +``` +$ node example/parse.js -a beep -b boop +{ _: [], a: 'beep', b: 'boop' } +``` + +``` +$ node example/parse.js -x 3 -y 4 -n5 -abc --beep=boop foo bar baz +{ _: [ 'foo', 'bar', 'baz' ], + x: 3, + y: 4, + n: 5, + a: true, + b: true, + c: true, + beep: 'boop' } +``` + +# security + +Previous versions had a prototype pollution bug that could cause privilege +escalation in some circumstances when handling untrusted user input. + +Please use version 1.2.3 or later: https://snyk.io/vuln/SNYK-JS-MINIMIST-559764 + +# methods + +``` js +var parseArgs = require('minimist') +``` + +## var argv = parseArgs(args, opts={}) + +Return an argument object `argv` populated with the array arguments from `args`. + +`argv._` contains all the arguments that didn't have an option associated with +them. + +Numeric-looking arguments will be returned as numbers unless `opts.string` or +`opts.boolean` is set for that argument name. + +Any arguments after `'--'` will not be parsed and will end up in `argv._`. + +options can be: + +* `opts.string` - a string or array of strings argument names to always treat as +strings +* `opts.boolean` - a boolean, string or array of strings to always treat as +booleans. if `true` will treat all double hyphenated arguments without equal signs +as boolean (e.g. affects `--foo`, not `-f` or `--foo=bar`) +* `opts.alias` - an object mapping string names to strings or arrays of string +argument names to use as aliases +* `opts.default` - an object mapping string argument names to default values +* `opts.stopEarly` - when true, populate `argv._` with everything after the +first non-option +* `opts['--']` - when true, populate `argv._` with everything before the `--` +and `argv['--']` with everything after the `--`. Here's an example: + + ``` + > require('./')('one two three -- four five --six'.split(' '), { '--': true }) + { _: [ 'one', 'two', 'three' ], + '--': [ 'four', 'five', '--six' ] } + ``` + + Note that with `opts['--']` set, parsing for arguments still stops after the + `--`. + +* `opts.unknown` - a function which is invoked with a command line parameter not +defined in the `opts` configuration object. If the function returns `false`, the +unknown option is not added to `argv`. + +# install + +With [npm](https://npmjs.org) do: + +``` +npm install minimist +``` + +# license + +MIT diff --git a/sonorancad/node_modules/minimist/test/all_bool.js b/sonorancad/node_modules/minimist/test/all_bool.js index befa0c9..ac83548 100644 --- a/sonorancad/node_modules/minimist/test/all_bool.js +++ b/sonorancad/node_modules/minimist/test/all_bool.js @@ -1,34 +1,32 @@ -'use strict'; - var parse = require('../'); var test = require('tape'); test('flag boolean true (default all --args to boolean)', function (t) { - var argv = parse(['moo', '--honk', 'cow'], { - boolean: true, - }); - - t.deepEqual(argv, { - honk: true, - _: ['moo', 'cow'], - }); - - t.deepEqual(typeof argv.honk, 'boolean'); - t.end(); + var argv = parse(['moo', '--honk', 'cow'], { + boolean: true + }); + + t.deepEqual(argv, { + honk: true, + _: ['moo', 'cow'] + }); + + t.deepEqual(typeof argv.honk, 'boolean'); + t.end(); }); test('flag boolean true only affects double hyphen arguments without equals signs', function (t) { - var argv = parse(['moo', '--honk', 'cow', '-p', '55', '--tacos=good'], { - boolean: true, - }); - - t.deepEqual(argv, { - honk: true, - tacos: 'good', - p: 55, - _: ['moo', 'cow'], - }); - - t.deepEqual(typeof argv.honk, 'boolean'); - t.end(); + var argv = parse(['moo', '--honk', 'cow', '-p', '55', '--tacos=good'], { + boolean: true + }); + + t.deepEqual(argv, { + honk: true, + tacos: 'good', + p: 55, + _: ['moo', 'cow'] + }); + + t.deepEqual(typeof argv.honk, 'boolean'); + t.end(); }); diff --git a/sonorancad/node_modules/minimist/test/bool.js b/sonorancad/node_modules/minimist/test/bool.js index e58d47e..5f7dbde 100644 --- a/sonorancad/node_modules/minimist/test/bool.js +++ b/sonorancad/node_modules/minimist/test/bool.js @@ -1,177 +1,178 @@ -'use strict'; - var parse = require('../'); var test = require('tape'); test('flag boolean default false', function (t) { - var argv = parse(['moo'], { - boolean: ['t', 'verbose'], - default: { verbose: false, t: false }, - }); - - t.deepEqual(argv, { - verbose: false, - t: false, - _: ['moo'], - }); - - t.deepEqual(typeof argv.verbose, 'boolean'); - t.deepEqual(typeof argv.t, 'boolean'); - t.end(); + var argv = parse(['moo'], { + boolean: ['t', 'verbose'], + default: { verbose: false, t: false } + }); + + t.deepEqual(argv, { + verbose: false, + t: false, + _: ['moo'] + }); + + t.deepEqual(typeof argv.verbose, 'boolean'); + t.deepEqual(typeof argv.t, 'boolean'); + t.end(); }); test('boolean groups', function (t) { - var argv = parse(['-x', '-z', 'one', 'two', 'three'], { - boolean: ['x', 'y', 'z'], - }); - - t.deepEqual(argv, { - x: true, - y: false, - z: true, - _: ['one', 'two', 'three'], - }); - - t.deepEqual(typeof argv.x, 'boolean'); - t.deepEqual(typeof argv.y, 'boolean'); - t.deepEqual(typeof argv.z, 'boolean'); - t.end(); + var argv = parse([ '-x', '-z', 'one', 'two', 'three' ], { + boolean: ['x','y','z'] + }); + + t.deepEqual(argv, { + x : true, + y : false, + z : true, + _ : [ 'one', 'two', 'three' ] + }); + + t.deepEqual(typeof argv.x, 'boolean'); + t.deepEqual(typeof argv.y, 'boolean'); + t.deepEqual(typeof argv.z, 'boolean'); + t.end(); }); test('boolean and alias with chainable api', function (t) { - var aliased = ['-h', 'derp']; - var regular = ['--herp', 'derp']; - var aliasedArgv = parse(aliased, { - boolean: 'herp', - alias: { h: 'herp' }, - }); - var propertyArgv = parse(regular, { - boolean: 'herp', - alias: { h: 'herp' }, - }); - var expected = { - herp: true, - h: true, - _: ['derp'], - }; - - t.same(aliasedArgv, expected); - t.same(propertyArgv, expected); - t.end(); + var aliased = [ '-h', 'derp' ]; + var regular = [ '--herp', 'derp' ]; + var opts = { + herp: { alias: 'h', boolean: true } + }; + var aliasedArgv = parse(aliased, { + boolean: 'herp', + alias: { h: 'herp' } + }); + var propertyArgv = parse(regular, { + boolean: 'herp', + alias: { h: 'herp' } + }); + var expected = { + herp: true, + h: true, + '_': [ 'derp' ] + }; + + t.same(aliasedArgv, expected); + t.same(propertyArgv, expected); + t.end(); }); test('boolean and alias with options hash', function (t) { - var aliased = ['-h', 'derp']; - var regular = ['--herp', 'derp']; - var opts = { - alias: { h: 'herp' }, - boolean: 'herp', - }; - var aliasedArgv = parse(aliased, opts); - var propertyArgv = parse(regular, opts); - var expected = { - herp: true, - h: true, - _: ['derp'], - }; - t.same(aliasedArgv, expected); - t.same(propertyArgv, expected); - t.end(); + var aliased = [ '-h', 'derp' ]; + var regular = [ '--herp', 'derp' ]; + var opts = { + alias: { 'h': 'herp' }, + boolean: 'herp' + }; + var aliasedArgv = parse(aliased, opts); + var propertyArgv = parse(regular, opts); + var expected = { + herp: true, + h: true, + '_': [ 'derp' ] + }; + t.same(aliasedArgv, expected); + t.same(propertyArgv, expected); + t.end(); }); test('boolean and alias array with options hash', function (t) { - var aliased = ['-h', 'derp']; - var regular = ['--herp', 'derp']; - var alt = ['--harp', 'derp']; - var opts = { - alias: { h: ['herp', 'harp'] }, - boolean: 'h', - }; - var aliasedArgv = parse(aliased, opts); - var propertyArgv = parse(regular, opts); - var altPropertyArgv = parse(alt, opts); - var expected = { - harp: true, - herp: true, - h: true, - _: ['derp'], - }; - t.same(aliasedArgv, expected); - t.same(propertyArgv, expected); - t.same(altPropertyArgv, expected); - t.end(); + var aliased = [ '-h', 'derp' ]; + var regular = [ '--herp', 'derp' ]; + var alt = [ '--harp', 'derp' ]; + var opts = { + alias: { 'h': ['herp', 'harp'] }, + boolean: 'h' + }; + var aliasedArgv = parse(aliased, opts); + var propertyArgv = parse(regular, opts); + var altPropertyArgv = parse(alt, opts); + var expected = { + harp: true, + herp: true, + h: true, + '_': [ 'derp' ] + }; + t.same(aliasedArgv, expected); + t.same(propertyArgv, expected); + t.same(altPropertyArgv, expected); + t.end(); }); test('boolean and alias using explicit true', function (t) { - var aliased = ['-h', 'true']; - var regular = ['--herp', 'true']; - var opts = { - alias: { h: 'herp' }, - boolean: 'h', - }; - var aliasedArgv = parse(aliased, opts); - var propertyArgv = parse(regular, opts); - var expected = { - herp: true, - h: true, - _: [], - }; - - t.same(aliasedArgv, expected); - t.same(propertyArgv, expected); - t.end(); + var aliased = [ '-h', 'true' ]; + var regular = [ '--herp', 'true' ]; + var opts = { + alias: { h: 'herp' }, + boolean: 'h' + }; + var aliasedArgv = parse(aliased, opts); + var propertyArgv = parse(regular, opts); + var expected = { + herp: true, + h: true, + '_': [ ] + }; + + t.same(aliasedArgv, expected); + t.same(propertyArgv, expected); + t.end(); }); // regression, see https://github.com/substack/node-optimist/issues/71 -test('boolean and --x=true', function (t) { - var parsed = parse(['--boool', '--other=true'], { - boolean: 'boool', - }); - - t.same(parsed.boool, true); - t.same(parsed.other, 'true'); - - parsed = parse(['--boool', '--other=false'], { - boolean: 'boool', - }); - - t.same(parsed.boool, true); - t.same(parsed.other, 'false'); - t.end(); +test('boolean and --x=true', function(t) { + var parsed = parse(['--boool', '--other=true'], { + boolean: 'boool' + }); + + t.same(parsed.boool, true); + t.same(parsed.other, 'true'); + + parsed = parse(['--boool', '--other=false'], { + boolean: 'boool' + }); + + t.same(parsed.boool, true); + t.same(parsed.other, 'false'); + t.end(); }); test('boolean --boool=true', function (t) { - var parsed = parse(['--boool=true'], { - default: { - boool: false, - }, - boolean: ['boool'], - }); - - t.same(parsed.boool, true); - t.end(); + var parsed = parse(['--boool=true'], { + default: { + boool: false + }, + boolean: ['boool'] + }); + + t.same(parsed.boool, true); + t.end(); }); test('boolean --boool=false', function (t) { - var parsed = parse(['--boool=false'], { - default: { - boool: true, - }, - boolean: ['boool'], - }); - - t.same(parsed.boool, false); - t.end(); + var parsed = parse(['--boool=false'], { + default: { + boool: true + }, + boolean: ['boool'] + }); + + t.same(parsed.boool, false); + t.end(); }); test('boolean using something similar to true', function (t) { - var opts = { boolean: 'h' }; - var result = parse(['-h', 'true.txt'], opts); - var expected = { - h: true, - _: ['true.txt'], - }; - - t.same(result, expected); - t.end(); -}); + var opts = { boolean: 'h' }; + var result = parse(['-h', 'true.txt'], opts); + var expected = { + h: true, + '_': ['true.txt'] + }; + + t.same(result, expected); + t.end(); +}); \ No newline at end of file diff --git a/sonorancad/node_modules/minimist/test/dash.js b/sonorancad/node_modules/minimist/test/dash.js index 7078817..5a4fa5b 100644 --- a/sonorancad/node_modules/minimist/test/dash.js +++ b/sonorancad/node_modules/minimist/test/dash.js @@ -1,43 +1,31 @@ -'use strict'; - var parse = require('../'); var test = require('tape'); test('-', function (t) { - t.plan(6); - t.deepEqual(parse(['-n', '-']), { n: '-', _: [] }); - t.deepEqual(parse(['--nnn', '-']), { nnn: '-', _: [] }); - t.deepEqual(parse(['-']), { _: ['-'] }); - t.deepEqual(parse(['-f-']), { f: '-', _: [] }); - t.deepEqual( - parse(['-b', '-'], { boolean: 'b' }), - { b: true, _: ['-'] } - ); - t.deepEqual( - parse(['-s', '-'], { string: 's' }), - { s: '-', _: [] } - ); + t.plan(5); + t.deepEqual(parse([ '-n', '-' ]), { n: '-', _: [] }); + t.deepEqual(parse([ '-' ]), { _: [ '-' ] }); + t.deepEqual(parse([ '-f-' ]), { f: '-', _: [] }); + t.deepEqual( + parse([ '-b', '-' ], { boolean: 'b' }), + { b: true, _: [ '-' ] } + ); + t.deepEqual( + parse([ '-s', '-' ], { string: 's' }), + { s: '-', _: [] } + ); }); test('-a -- b', function (t) { - t.plan(2); - t.deepEqual(parse(['-a', '--', 'b']), { a: true, _: ['b'] }); - t.deepEqual(parse(['--a', '--', 'b']), { a: true, _: ['b'] }); -}); - -test('move arguments after the -- into their own `--` array', function (t) { - t.plan(1); - t.deepEqual( - parse(['--name', 'John', 'before', '--', 'after'], { '--': true }), - { name: 'John', _: ['before'], '--': ['after'] } - ); + t.plan(3); + t.deepEqual(parse([ '-a', '--', 'b' ]), { a: true, _: [ 'b' ] }); + t.deepEqual(parse([ '--a', '--', 'b' ]), { a: true, _: [ 'b' ] }); + t.deepEqual(parse([ '--a', '--', 'b' ]), { a: true, _: [ 'b' ] }); }); -test('--- option value', function (t) { - // A multi-dash value is largely an edge case, but check the behaviour is as expected, - // and in particular the same for short option and long option (as made consistent in Jan 2023). - t.plan(2); - t.deepEqual(parse(['-n', '---']), { n: '---', _: [] }); - t.deepEqual(parse(['--nnn', '---']), { nnn: '---', _: [] }); +test('move arguments after the -- into their own `--` array', function(t) { + t.plan(1); + t.deepEqual( + parse([ '--name', 'John', 'before', '--', 'after' ], { '--': true }), + { name: 'John', _: [ 'before' ], '--': [ 'after' ] }); }); - diff --git a/sonorancad/node_modules/minimist/test/default_bool.js b/sonorancad/node_modules/minimist/test/default_bool.js index 4e9f625..780a311 100644 --- a/sonorancad/node_modules/minimist/test/default_bool.js +++ b/sonorancad/node_modules/minimist/test/default_bool.js @@ -1,37 +1,35 @@ -'use strict'; - var test = require('tape'); var parse = require('../'); test('boolean default true', function (t) { - var argv = parse([], { - boolean: 'sometrue', - default: { sometrue: true }, - }); - t.equal(argv.sometrue, true); - t.end(); + var argv = parse([], { + boolean: 'sometrue', + default: { sometrue: true } + }); + t.equal(argv.sometrue, true); + t.end(); }); test('boolean default false', function (t) { - var argv = parse([], { - boolean: 'somefalse', - default: { somefalse: false }, - }); - t.equal(argv.somefalse, false); - t.end(); + var argv = parse([], { + boolean: 'somefalse', + default: { somefalse: false } + }); + t.equal(argv.somefalse, false); + t.end(); }); test('boolean default to null', function (t) { - var argv = parse([], { - boolean: 'maybe', - default: { maybe: null }, - }); - t.equal(argv.maybe, null); + var argv = parse([], { + boolean: 'maybe', + default: { maybe: null } + }); + t.equal(argv.maybe, null); + var argv = parse(['--maybe'], { + boolean: 'maybe', + default: { maybe: null } + }); + t.equal(argv.maybe, true); + t.end(); - var argvLong = parse(['--maybe'], { - boolean: 'maybe', - default: { maybe: null }, - }); - t.equal(argvLong.maybe, true); - t.end(); -}); +}) diff --git a/sonorancad/node_modules/minimist/test/dotted.js b/sonorancad/node_modules/minimist/test/dotted.js index 126ff03..d8b3e85 100644 --- a/sonorancad/node_modules/minimist/test/dotted.js +++ b/sonorancad/node_modules/minimist/test/dotted.js @@ -1,24 +1,22 @@ -'use strict'; - var parse = require('../'); var test = require('tape'); test('dotted alias', function (t) { - var argv = parse(['--a.b', '22'], { default: { 'a.b': 11 }, alias: { 'a.b': 'aa.bb' } }); - t.equal(argv.a.b, 22); - t.equal(argv.aa.bb, 22); - t.end(); + var argv = parse(['--a.b', '22'], {default: {'a.b': 11}, alias: {'a.b': 'aa.bb'}}); + t.equal(argv.a.b, 22); + t.equal(argv.aa.bb, 22); + t.end(); }); test('dotted default', function (t) { - var argv = parse('', { default: { 'a.b': 11 }, alias: { 'a.b': 'aa.bb' } }); - t.equal(argv.a.b, 11); - t.equal(argv.aa.bb, 11); - t.end(); + var argv = parse('', {default: {'a.b': 11}, alias: {'a.b': 'aa.bb'}}); + t.equal(argv.a.b, 11); + t.equal(argv.aa.bb, 11); + t.end(); }); test('dotted default with no alias', function (t) { - var argv = parse('', { default: { 'a.b': 11 } }); - t.equal(argv.a.b, 11); - t.end(); + var argv = parse('', {default: {'a.b': 11}}); + t.equal(argv.a.b, 11); + t.end(); }); diff --git a/sonorancad/node_modules/minimist/test/kv_short.js b/sonorancad/node_modules/minimist/test/kv_short.js index 6d1b53a..f813b30 100644 --- a/sonorancad/node_modules/minimist/test/kv_short.js +++ b/sonorancad/node_modules/minimist/test/kv_short.js @@ -1,32 +1,16 @@ -'use strict'; - var parse = require('../'); var test = require('tape'); -test('short -k=v', function (t) { - t.plan(1); - - var argv = parse(['-b=123']); - t.deepEqual(argv, { b: 123, _: [] }); -}); - -test('multi short -k=v', function (t) { - t.plan(1); - - var argv = parse(['-a=whatever', '-b=robots']); - t.deepEqual(argv, { a: 'whatever', b: 'robots', _: [] }); +test('short -k=v' , function (t) { + t.plan(1); + + var argv = parse([ '-b=123' ]); + t.deepEqual(argv, { b: 123, _: [] }); }); -test('short with embedded equals -k=a=b', function (t) { - t.plan(1); - - var argv = parse(['-k=a=b']); - t.deepEqual(argv, { k: 'a=b', _: [] }); -}); - -test('short with later equals like -ab=c', function (t) { - t.plan(1); - - var argv = parse(['-ab=c']); - t.deepEqual(argv, { a: true, b: 'c', _: [] }); +test('multi short -k=v' , function (t) { + t.plan(1); + + var argv = parse([ '-a=whatever', '-b=robots' ]); + t.deepEqual(argv, { a: 'whatever', b: 'robots', _: [] }); }); diff --git a/sonorancad/node_modules/minimist/test/long.js b/sonorancad/node_modules/minimist/test/long.js index 9fef51f..5d3a1e0 100644 --- a/sonorancad/node_modules/minimist/test/long.js +++ b/sonorancad/node_modules/minimist/test/long.js @@ -1,33 +1,31 @@ -'use strict'; - var test = require('tape'); var parse = require('../'); test('long opts', function (t) { - t.deepEqual( - parse(['--bool']), - { bool: true, _: [] }, - 'long boolean' - ); - t.deepEqual( - parse(['--pow', 'xixxle']), - { pow: 'xixxle', _: [] }, - 'long capture sp' - ); - t.deepEqual( - parse(['--pow=xixxle']), - { pow: 'xixxle', _: [] }, - 'long capture eq' - ); - t.deepEqual( - parse(['--host', 'localhost', '--port', '555']), - { host: 'localhost', port: 555, _: [] }, - 'long captures sp' - ); - t.deepEqual( - parse(['--host=localhost', '--port=555']), - { host: 'localhost', port: 555, _: [] }, - 'long captures eq' - ); - t.end(); + t.deepEqual( + parse([ '--bool' ]), + { bool : true, _ : [] }, + 'long boolean' + ); + t.deepEqual( + parse([ '--pow', 'xixxle' ]), + { pow : 'xixxle', _ : [] }, + 'long capture sp' + ); + t.deepEqual( + parse([ '--pow=xixxle' ]), + { pow : 'xixxle', _ : [] }, + 'long capture eq' + ); + t.deepEqual( + parse([ '--host', 'localhost', '--port', '555' ]), + { host : 'localhost', port : 555, _ : [] }, + 'long captures sp' + ); + t.deepEqual( + parse([ '--host=localhost', '--port=555' ]), + { host : 'localhost', port : 555, _ : [] }, + 'long captures eq' + ); + t.end(); }); diff --git a/sonorancad/node_modules/minimist/test/num.js b/sonorancad/node_modules/minimist/test/num.js index 074393e..2cc77f4 100644 --- a/sonorancad/node_modules/minimist/test/num.js +++ b/sonorancad/node_modules/minimist/test/num.js @@ -1,38 +1,36 @@ -'use strict'; - var parse = require('../'); var test = require('tape'); test('nums', function (t) { - var argv = parse([ - '-x', '1234', - '-y', '5.67', - '-z', '1e7', - '-w', '10f', - '--hex', '0xdeadbeef', - '789', - ]); - t.deepEqual(argv, { - x: 1234, - y: 5.67, - z: 1e7, - w: '10f', - hex: 0xdeadbeef, - _: [789], - }); - t.deepEqual(typeof argv.x, 'number'); - t.deepEqual(typeof argv.y, 'number'); - t.deepEqual(typeof argv.z, 'number'); - t.deepEqual(typeof argv.w, 'string'); - t.deepEqual(typeof argv.hex, 'number'); - t.deepEqual(typeof argv._[0], 'number'); - t.end(); + var argv = parse([ + '-x', '1234', + '-y', '5.67', + '-z', '1e7', + '-w', '10f', + '--hex', '0xdeadbeef', + '789' + ]); + t.deepEqual(argv, { + x : 1234, + y : 5.67, + z : 1e7, + w : '10f', + hex : 0xdeadbeef, + _ : [ 789 ] + }); + t.deepEqual(typeof argv.x, 'number'); + t.deepEqual(typeof argv.y, 'number'); + t.deepEqual(typeof argv.z, 'number'); + t.deepEqual(typeof argv.w, 'string'); + t.deepEqual(typeof argv.hex, 'number'); + t.deepEqual(typeof argv._[0], 'number'); + t.end(); }); test('already a number', function (t) { - var argv = parse(['-x', 1234, 789]); - t.deepEqual(argv, { x: 1234, _: [789] }); - t.deepEqual(typeof argv.x, 'number'); - t.deepEqual(typeof argv._[0], 'number'); - t.end(); + var argv = parse([ '-x', 1234, 789 ]); + t.deepEqual(argv, { x : 1234, _ : [ 789 ] }); + t.deepEqual(typeof argv.x, 'number'); + t.deepEqual(typeof argv._[0], 'number'); + t.end(); }); diff --git a/sonorancad/node_modules/minimist/test/parse.js b/sonorancad/node_modules/minimist/test/parse.js index 65d9d90..7b4a2a1 100644 --- a/sonorancad/node_modules/minimist/test/parse.js +++ b/sonorancad/node_modules/minimist/test/parse.js @@ -1,209 +1,197 @@ -'use strict'; - var parse = require('../'); var test = require('tape'); test('parse args', function (t) { - t.deepEqual( - parse(['--no-moo']), - { moo: false, _: [] }, - 'no' - ); - t.deepEqual( - parse(['-v', 'a', '-v', 'b', '-v', 'c']), - { v: ['a', 'b', 'c'], _: [] }, - 'multi' - ); - t.end(); + t.deepEqual( + parse([ '--no-moo' ]), + { moo : false, _ : [] }, + 'no' + ); + t.deepEqual( + parse([ '-v', 'a', '-v', 'b', '-v', 'c' ]), + { v : ['a','b','c'], _ : [] }, + 'multi' + ); + t.end(); }); - + test('comprehensive', function (t) { - t.deepEqual( - parse([ - '--name=meowmers', 'bare', '-cats', 'woo', - '-h', 'awesome', '--multi=quux', - '--key', 'value', - '-b', '--bool', '--no-meep', '--multi=baz', - '--', '--not-a-flag', 'eek', - ]), - { - c: true, - a: true, - t: true, - s: 'woo', - h: 'awesome', - b: true, - bool: true, - key: 'value', - multi: ['quux', 'baz'], - meep: false, - name: 'meowmers', - _: ['bare', '--not-a-flag', 'eek'], - } - ); - t.end(); + t.deepEqual( + parse([ + '--name=meowmers', 'bare', '-cats', 'woo', + '-h', 'awesome', '--multi=quux', + '--key', 'value', + '-b', '--bool', '--no-meep', '--multi=baz', + '--', '--not-a-flag', 'eek' + ]), + { + c : true, + a : true, + t : true, + s : 'woo', + h : 'awesome', + b : true, + bool : true, + key : 'value', + multi : [ 'quux', 'baz' ], + meep : false, + name : 'meowmers', + _ : [ 'bare', '--not-a-flag', 'eek' ] + } + ); + t.end(); }); test('flag boolean', function (t) { - var argv = parse(['-t', 'moo'], { boolean: 't' }); - t.deepEqual(argv, { t: true, _: ['moo'] }); - t.deepEqual(typeof argv.t, 'boolean'); - t.end(); + var argv = parse([ '-t', 'moo' ], { boolean: 't' }); + t.deepEqual(argv, { t : true, _ : [ 'moo' ] }); + t.deepEqual(typeof argv.t, 'boolean'); + t.end(); }); test('flag boolean value', function (t) { - var argv = parse(['--verbose', 'false', 'moo', '-t', 'true'], { - boolean: ['t', 'verbose'], - default: { verbose: true }, - }); - - t.deepEqual(argv, { - verbose: false, - t: true, - _: ['moo'], - }); - - t.deepEqual(typeof argv.verbose, 'boolean'); - t.deepEqual(typeof argv.t, 'boolean'); - t.end(); + var argv = parse(['--verbose', 'false', 'moo', '-t', 'true'], { + boolean: [ 't', 'verbose' ], + default: { verbose: true } + }); + + t.deepEqual(argv, { + verbose: false, + t: true, + _: ['moo'] + }); + + t.deepEqual(typeof argv.verbose, 'boolean'); + t.deepEqual(typeof argv.t, 'boolean'); + t.end(); }); -test('newlines in params', function (t) { - var args = parse(['-s', 'X\nX']); - t.deepEqual(args, { _: [], s: 'X\nX' }); - - // reproduce in bash: - // VALUE="new - // line" - // node program.js --s="$VALUE" - args = parse(['--s=X\nX']); - t.deepEqual(args, { _: [], s: 'X\nX' }); - t.end(); +test('newlines in params' , function (t) { + var args = parse([ '-s', "X\nX" ]) + t.deepEqual(args, { _ : [], s : "X\nX" }); + + // reproduce in bash: + // VALUE="new + // line" + // node program.js --s="$VALUE" + args = parse([ "--s=X\nX" ]) + t.deepEqual(args, { _ : [], s : "X\nX" }); + t.end(); }); -test('strings', function (t) { - var s = parse(['-s', '0001234'], { string: 's' }).s; - t.equal(s, '0001234'); - t.equal(typeof s, 'string'); - - var x = parse(['-x', '56'], { string: 'x' }).x; - t.equal(x, '56'); - t.equal(typeof x, 'string'); - t.end(); +test('strings' , function (t) { + var s = parse([ '-s', '0001234' ], { string: 's' }).s; + t.equal(s, '0001234'); + t.equal(typeof s, 'string'); + + var x = parse([ '-x', '56' ], { string: 'x' }).x; + t.equal(x, '56'); + t.equal(typeof x, 'string'); + t.end(); }); test('stringArgs', function (t) { - var s = parse([' ', ' '], { string: '_' })._; - t.same(s.length, 2); - t.same(typeof s[0], 'string'); - t.same(s[0], ' '); - t.same(typeof s[1], 'string'); - t.same(s[1], ' '); - t.end(); + var s = parse([ ' ', ' ' ], { string: '_' })._; + t.same(s.length, 2); + t.same(typeof s[0], 'string'); + t.same(s[0], ' '); + t.same(typeof s[1], 'string'); + t.same(s[1], ' '); + t.end(); }); -test('empty strings', function (t) { - var s = parse(['-s'], { string: 's' }).s; - t.equal(s, ''); - t.equal(typeof s, 'string'); +test('empty strings', function(t) { + var s = parse([ '-s' ], { string: 's' }).s; + t.equal(s, ''); + t.equal(typeof s, 'string'); - var str = parse(['--str'], { string: 'str' }).str; - t.equal(str, ''); - t.equal(typeof str, 'string'); + var str = parse([ '--str' ], { string: 'str' }).str; + t.equal(str, ''); + t.equal(typeof str, 'string'); - var letters = parse(['-art'], { - string: ['a', 't'], - }); + var letters = parse([ '-art' ], { + string: [ 'a', 't' ] + }); - t.equal(letters.a, ''); - t.equal(letters.r, true); - t.equal(letters.t, ''); + t.equal(letters.a, ''); + t.equal(letters.r, true); + t.equal(letters.t, ''); - t.end(); + t.end(); }); -test('string and alias', function (t) { - var x = parse(['--str', '000123'], { - string: 's', - alias: { s: 'str' }, - }); - - t.equal(x.str, '000123'); - t.equal(typeof x.str, 'string'); - t.equal(x.s, '000123'); - t.equal(typeof x.s, 'string'); - - var y = parse(['-s', '000123'], { - string: 'str', - alias: { str: 's' }, - }); - - t.equal(y.str, '000123'); - t.equal(typeof y.str, 'string'); - t.equal(y.s, '000123'); - t.equal(typeof y.s, 'string'); - - var z = parse(['-s123'], { - alias: { str: ['s', 'S'] }, - string: ['str'], - }); - - t.deepEqual( - z, - { _: [], s: '123', S: '123', str: '123' }, - 'opt.string works with multiple aliases' - ); - t.end(); + +test('string and alias', function(t) { + var x = parse([ '--str', '000123' ], { + string: 's', + alias: { s: 'str' } + }); + + t.equal(x.str, '000123'); + t.equal(typeof x.str, 'string'); + t.equal(x.s, '000123'); + t.equal(typeof x.s, 'string'); + + var y = parse([ '-s', '000123' ], { + string: 'str', + alias: { str: 's' } + }); + + t.equal(y.str, '000123'); + t.equal(typeof y.str, 'string'); + t.equal(y.s, '000123'); + t.equal(typeof y.s, 'string'); + t.end(); }); test('slashBreak', function (t) { - t.same( - parse(['-I/foo/bar/baz']), - { I: '/foo/bar/baz', _: [] } - ); - t.same( - parse(['-xyz/foo/bar/baz']), - { x: true, y: true, z: '/foo/bar/baz', _: [] } - ); - t.end(); + t.same( + parse([ '-I/foo/bar/baz' ]), + { I : '/foo/bar/baz', _ : [] } + ); + t.same( + parse([ '-xyz/foo/bar/baz' ]), + { x : true, y : true, z : '/foo/bar/baz', _ : [] } + ); + t.end(); }); test('alias', function (t) { - var argv = parse(['-f', '11', '--zoom', '55'], { - alias: { z: 'zoom' }, - }); - t.equal(argv.zoom, 55); - t.equal(argv.z, argv.zoom); - t.equal(argv.f, 11); - t.end(); + var argv = parse([ '-f', '11', '--zoom', '55' ], { + alias: { z: 'zoom' } + }); + t.equal(argv.zoom, 55); + t.equal(argv.z, argv.zoom); + t.equal(argv.f, 11); + t.end(); }); test('multiAlias', function (t) { - var argv = parse(['-f', '11', '--zoom', '55'], { - alias: { z: ['zm', 'zoom'] }, - }); - t.equal(argv.zoom, 55); - t.equal(argv.z, argv.zoom); - t.equal(argv.z, argv.zm); - t.equal(argv.f, 11); - t.end(); + var argv = parse([ '-f', '11', '--zoom', '55' ], { + alias: { z: [ 'zm', 'zoom' ] } + }); + t.equal(argv.zoom, 55); + t.equal(argv.z, argv.zoom); + t.equal(argv.z, argv.zm); + t.equal(argv.f, 11); + t.end(); }); test('nested dotted objects', function (t) { - var argv = parse([ - '--foo.bar', '3', '--foo.baz', '4', - '--foo.quux.quibble', '5', '--foo.quux.o_O', - '--beep.boop', - ]); - - t.same(argv.foo, { - bar: 3, - baz: 4, - quux: { - quibble: 5, - o_O: true, - }, - }); - t.same(argv.beep, { boop: true }); - t.end(); + var argv = parse([ + '--foo.bar', '3', '--foo.baz', '4', + '--foo.quux.quibble', '5', '--foo.quux.o_O', + '--beep.boop' + ]); + + t.same(argv.foo, { + bar : 3, + baz : 4, + quux : { + quibble : 5, + o_O : true + } + }); + t.same(argv.beep, { boop : true }); + t.end(); }); diff --git a/sonorancad/node_modules/minimist/test/parse_modified.js b/sonorancad/node_modules/minimist/test/parse_modified.js index 32965d1..ab620dc 100644 --- a/sonorancad/node_modules/minimist/test/parse_modified.js +++ b/sonorancad/node_modules/minimist/test/parse_modified.js @@ -1,11 +1,9 @@ -'use strict'; - var parse = require('../'); var test = require('tape'); -test('parse with modifier functions', function (t) { - t.plan(1); - - var argv = parse(['-b', '123'], { boolean: 'b' }); - t.deepEqual(argv, { b: true, _: [123] }); +test('parse with modifier functions' , function (t) { + t.plan(1); + + var argv = parse([ '-b', '123' ], { boolean: 'b' }); + t.deepEqual(argv, { b: true, _: [123] }); }); diff --git a/sonorancad/node_modules/minimist/test/proto.js b/sonorancad/node_modules/minimist/test/proto.js index 6e629dd..8649107 100644 --- a/sonorancad/node_modules/minimist/test/proto.js +++ b/sonorancad/node_modules/minimist/test/proto.js @@ -1,64 +1,44 @@ -'use strict'; - -/* eslint no-proto: 0 */ - var parse = require('../'); var test = require('tape'); test('proto pollution', function (t) { - var argv = parse(['--__proto__.x', '123']); - t.equal({}.x, undefined); - t.equal(argv.__proto__.x, undefined); - t.equal(argv.x, undefined); - t.end(); + var argv = parse(['--__proto__.x','123']); + t.equal({}.x, undefined); + t.equal(argv.__proto__.x, undefined); + t.equal(argv.x, undefined); + t.end(); }); test('proto pollution (array)', function (t) { - var argv = parse(['--x', '4', '--x', '5', '--x.__proto__.z', '789']); - t.equal({}.z, undefined); - t.deepEqual(argv.x, [4, 5]); - t.equal(argv.x.z, undefined); - t.equal(argv.x.__proto__.z, undefined); - t.end(); + var argv = parse(['--x','4','--x','5','--x.__proto__.z','789']); + t.equal({}.z, undefined); + t.deepEqual(argv.x, [4,5]); + t.equal(argv.x.z, undefined); + t.equal(argv.x.__proto__.z, undefined); + t.end(); }); test('proto pollution (number)', function (t) { - var argv = parse(['--x', '5', '--x.__proto__.z', '100']); - t.equal({}.z, undefined); - t.equal((4).z, undefined); - t.equal(argv.x, 5); - t.equal(argv.x.z, undefined); - t.end(); + var argv = parse(['--x','5','--x.__proto__.z','100']); + t.equal({}.z, undefined); + t.equal((4).z, undefined); + t.equal(argv.x, 5); + t.equal(argv.x.z, undefined); + t.end(); }); test('proto pollution (string)', function (t) { - var argv = parse(['--x', 'abc', '--x.__proto__.z', 'def']); - t.equal({}.z, undefined); - t.equal('...'.z, undefined); - t.equal(argv.x, 'abc'); - t.equal(argv.x.z, undefined); - t.end(); + var argv = parse(['--x','abc','--x.__proto__.z','def']); + t.equal({}.z, undefined); + t.equal('...'.z, undefined); + t.equal(argv.x, 'abc'); + t.equal(argv.x.z, undefined); + t.end(); }); test('proto pollution (constructor)', function (t) { - var argv = parse(['--constructor.prototype.y', '123']); - t.equal({}.y, undefined); - t.equal(argv.y, undefined); - t.end(); -}); - -test('proto pollution (constructor function)', function (t) { - var argv = parse(['--_.concat.constructor.prototype.y', '123']); - function fnToBeTested() {} - t.equal(fnToBeTested.y, undefined); - t.equal(argv.y, undefined); - t.end(); -}); - -// powered by snyk - https://github.com/backstage/backstage/issues/10343 -test('proto pollution (constructor function) snyk', function (t) { - var argv = parse('--_.constructor.constructor.prototype.foo bar'.split(' ')); - t.equal(function () {}.foo, undefined); - t.equal(argv.y, undefined); - t.end(); + var argv = parse(['--constructor.prototype.y','123']); + t.equal({}.y, undefined); + t.equal(argv.y, undefined); + t.end(); }); diff --git a/sonorancad/node_modules/minimist/test/short.js b/sonorancad/node_modules/minimist/test/short.js index 4a7b843..d513a1c 100644 --- a/sonorancad/node_modules/minimist/test/short.js +++ b/sonorancad/node_modules/minimist/test/short.js @@ -1,69 +1,67 @@ -'use strict'; - var parse = require('../'); var test = require('tape'); test('numeric short args', function (t) { - t.plan(2); - t.deepEqual(parse(['-n123']), { n: 123, _: [] }); - t.deepEqual( - parse(['-123', '456']), - { 1: true, 2: true, 3: 456, _: [] } - ); + t.plan(2); + t.deepEqual(parse([ '-n123' ]), { n: 123, _: [] }); + t.deepEqual( + parse([ '-123', '456' ]), + { 1: true, 2: true, 3: 456, _: [] } + ); }); test('short', function (t) { - t.deepEqual( - parse(['-b']), - { b: true, _: [] }, - 'short boolean' - ); - t.deepEqual( - parse(['foo', 'bar', 'baz']), - { _: ['foo', 'bar', 'baz'] }, - 'bare' - ); - t.deepEqual( - parse(['-cats']), - { c: true, a: true, t: true, s: true, _: [] }, - 'group' - ); - t.deepEqual( - parse(['-cats', 'meow']), - { c: true, a: true, t: true, s: 'meow', _: [] }, - 'short group next' - ); - t.deepEqual( - parse(['-h', 'localhost']), - { h: 'localhost', _: [] }, - 'short capture' - ); - t.deepEqual( - parse(['-h', 'localhost', '-p', '555']), - { h: 'localhost', p: 555, _: [] }, - 'short captures' - ); - t.end(); + t.deepEqual( + parse([ '-b' ]), + { b : true, _ : [] }, + 'short boolean' + ); + t.deepEqual( + parse([ 'foo', 'bar', 'baz' ]), + { _ : [ 'foo', 'bar', 'baz' ] }, + 'bare' + ); + t.deepEqual( + parse([ '-cats' ]), + { c : true, a : true, t : true, s : true, _ : [] }, + 'group' + ); + t.deepEqual( + parse([ '-cats', 'meow' ]), + { c : true, a : true, t : true, s : 'meow', _ : [] }, + 'short group next' + ); + t.deepEqual( + parse([ '-h', 'localhost' ]), + { h : 'localhost', _ : [] }, + 'short capture' + ); + t.deepEqual( + parse([ '-h', 'localhost', '-p', '555' ]), + { h : 'localhost', p : 555, _ : [] }, + 'short captures' + ); + t.end(); }); - + test('mixed short bool and capture', function (t) { - t.same( - parse(['-h', 'localhost', '-fp', '555', 'script.js']), - { - f: true, p: 555, h: 'localhost', - _: ['script.js'], - } - ); - t.end(); + t.same( + parse([ '-h', 'localhost', '-fp', '555', 'script.js' ]), + { + f : true, p : 555, h : 'localhost', + _ : [ 'script.js' ] + } + ); + t.end(); }); - + test('short and long', function (t) { - t.deepEqual( - parse(['-h', 'localhost', '-fp', '555', 'script.js']), - { - f: true, p: 555, h: 'localhost', - _: ['script.js'], - } - ); - t.end(); + t.deepEqual( + parse([ '-h', 'localhost', '-fp', '555', 'script.js' ]), + { + f : true, p : 555, h : 'localhost', + _ : [ 'script.js' ] + } + ); + t.end(); }); diff --git a/sonorancad/node_modules/minimist/test/stop_early.js b/sonorancad/node_modules/minimist/test/stop_early.js index 52a6a91..bdf9fbc 100644 --- a/sonorancad/node_modules/minimist/test/stop_early.js +++ b/sonorancad/node_modules/minimist/test/stop_early.js @@ -1,17 +1,15 @@ -'use strict'; - var parse = require('../'); var test = require('tape'); test('stops parsing on the first non-option when stopEarly is set', function (t) { - var argv = parse(['--aaa', 'bbb', 'ccc', '--ddd'], { - stopEarly: true, - }); + var argv = parse(['--aaa', 'bbb', 'ccc', '--ddd'], { + stopEarly: true + }); - t.deepEqual(argv, { - aaa: 'bbb', - _: ['ccc', '--ddd'], - }); + t.deepEqual(argv, { + aaa: 'bbb', + _: ['ccc', '--ddd'] + }); - t.end(); + t.end(); }); diff --git a/sonorancad/node_modules/minimist/test/unknown.js b/sonorancad/node_modules/minimist/test/unknown.js index 4f2e0ca..462a36b 100644 --- a/sonorancad/node_modules/minimist/test/unknown.js +++ b/sonorancad/node_modules/minimist/test/unknown.js @@ -1,104 +1,102 @@ -'use strict'; - var parse = require('../'); var test = require('tape'); test('boolean and alias is not unknown', function (t) { - var unknown = []; - function unknownFn(arg) { - unknown.push(arg); - return false; - } - var aliased = ['-h', 'true', '--derp', 'true']; - var regular = ['--herp', 'true', '-d', 'true']; - var opts = { - alias: { h: 'herp' }, - boolean: 'h', - unknown: unknownFn, - }; - parse(aliased, opts); - parse(regular, opts); + var unknown = []; + function unknownFn(arg) { + unknown.push(arg); + return false; + } + var aliased = [ '-h', 'true', '--derp', 'true' ]; + var regular = [ '--herp', 'true', '-d', 'true' ]; + var opts = { + alias: { h: 'herp' }, + boolean: 'h', + unknown: unknownFn + }; + var aliasedArgv = parse(aliased, opts); + var propertyArgv = parse(regular, opts); - t.same(unknown, ['--derp', '-d']); - t.end(); + t.same(unknown, ['--derp', '-d']); + t.end(); }); test('flag boolean true any double hyphen argument is not unknown', function (t) { - var unknown = []; - function unknownFn(arg) { - unknown.push(arg); - return false; - } - var argv = parse(['--honk', '--tacos=good', 'cow', '-p', '55'], { - boolean: true, - unknown: unknownFn, - }); - t.same(unknown, ['--tacos=good', 'cow', '-p']); - t.same(argv, { - honk: true, - _: [], - }); - t.end(); + var unknown = []; + function unknownFn(arg) { + unknown.push(arg); + return false; + } + var argv = parse(['--honk', '--tacos=good', 'cow', '-p', '55'], { + boolean: true, + unknown: unknownFn + }); + t.same(unknown, ['--tacos=good', 'cow', '-p']); + t.same(argv, { + honk: true, + _: [] + }); + t.end(); }); test('string and alias is not unknown', function (t) { - var unknown = []; - function unknownFn(arg) { - unknown.push(arg); - return false; - } - var aliased = ['-h', 'hello', '--derp', 'goodbye']; - var regular = ['--herp', 'hello', '-d', 'moon']; - var opts = { - alias: { h: 'herp' }, - string: 'h', - unknown: unknownFn, - }; - parse(aliased, opts); - parse(regular, opts); + var unknown = []; + function unknownFn(arg) { + unknown.push(arg); + return false; + } + var aliased = [ '-h', 'hello', '--derp', 'goodbye' ]; + var regular = [ '--herp', 'hello', '-d', 'moon' ]; + var opts = { + alias: { h: 'herp' }, + string: 'h', + unknown: unknownFn + }; + var aliasedArgv = parse(aliased, opts); + var propertyArgv = parse(regular, opts); - t.same(unknown, ['--derp', '-d']); - t.end(); + t.same(unknown, ['--derp', '-d']); + t.end(); }); test('default and alias is not unknown', function (t) { - var unknown = []; - function unknownFn(arg) { - unknown.push(arg); - return false; - } - var aliased = ['-h', 'hello']; - var regular = ['--herp', 'hello']; - var opts = { - default: { h: 'bar' }, - alias: { h: 'herp' }, - unknown: unknownFn, - }; - parse(aliased, opts); - parse(regular, opts); + var unknown = []; + function unknownFn(arg) { + unknown.push(arg); + return false; + } + var aliased = [ '-h', 'hello' ]; + var regular = [ '--herp', 'hello' ]; + var opts = { + default: { 'h': 'bar' }, + alias: { 'h': 'herp' }, + unknown: unknownFn + }; + var aliasedArgv = parse(aliased, opts); + var propertyArgv = parse(regular, opts); - t.same(unknown, []); - t.end(); - unknownFn(); // exercise fn for 100% coverage + t.same(unknown, []); + t.end(); + unknownFn(); // exercise fn for 100% coverage }); test('value following -- is not unknown', function (t) { - var unknown = []; - function unknownFn(arg) { - unknown.push(arg); - return false; - } - var aliased = ['--bad', '--', 'good', 'arg']; - var opts = { - '--': true, - unknown: unknownFn, - }; - var argv = parse(aliased, opts); + var unknown = []; + function unknownFn(arg) { + unknown.push(arg); + return false; + } + var aliased = [ '--bad', '--', 'good', 'arg' ]; + var opts = { + '--': true, + unknown: unknownFn + }; + var argv = parse(aliased, opts); - t.same(unknown, ['--bad']); - t.same(argv, { - '--': ['good', 'arg'], - _: [], - }); - t.end(); + t.same(unknown, ['--bad']); + t.same(argv, { + '--': ['good', 'arg'], + '_': [] + }) + t.end(); }); diff --git a/sonorancad/node_modules/minimist/test/whitespace.js b/sonorancad/node_modules/minimist/test/whitespace.js index 4fdaf1d..8a52a58 100644 --- a/sonorancad/node_modules/minimist/test/whitespace.js +++ b/sonorancad/node_modules/minimist/test/whitespace.js @@ -1,10 +1,8 @@ -'use strict'; - var parse = require('../'); var test = require('tape'); -test('whitespace should be whitespace', function (t) { - t.plan(1); - var x = parse(['-x', '\t']).x; - t.equal(x, '\t'); +test('whitespace should be whitespace' , function (t) { + t.plan(1); + var x = parse([ '-x', '\t' ]).x; + t.equal(x, '\t'); }); diff --git a/sonorancad/node_modules/mkdirp/index.js b/sonorancad/node_modules/mkdirp/index.js index 0890ac3..468d7cd 100644 --- a/sonorancad/node_modules/mkdirp/index.js +++ b/sonorancad/node_modules/mkdirp/index.js @@ -21,7 +21,7 @@ function mkdirP (p, opts, f, made) { } if (!made) made = null; - var cb = f || /* istanbul ignore next */ function () {}; + var cb = f || function () {}; p = path.resolve(p); xfs.mkdir(p, mode, function (er) { @@ -31,10 +31,8 @@ function mkdirP (p, opts, f, made) { } switch (er.code) { case 'ENOENT': - /* istanbul ignore if */ if (path.dirname(p) === p) return cb(er); mkdirP(path.dirname(p), opts, function (er, made) { - /* istanbul ignore if */ if (er) cb(er, made); else mkdirP(p, opts, cb, made); }); @@ -89,10 +87,9 @@ mkdirP.sync = function sync (p, opts, made) { try { stat = xfs.statSync(p); } - catch (err1) /* istanbul ignore next */ { + catch (err1) { throw err0; } - /* istanbul ignore if */ if (!stat.isDirectory()) throw err0; break; } diff --git a/sonorancad/node_modules/readable-stream/README.md b/sonorancad/node_modules/readable-stream/README.md index f1c5a93..23fe3f3 100644 --- a/sonorancad/node_modules/readable-stream/README.md +++ b/sonorancad/node_modules/readable-stream/README.md @@ -1,6 +1,6 @@ # readable-stream -***Node-core v8.17.0 streams for userland*** [![Build Status](https://travis-ci.org/nodejs/readable-stream.svg?branch=master)](https://travis-ci.org/nodejs/readable-stream) +***Node-core v8.11.1 streams for userland*** [![Build Status](https://travis-ci.org/nodejs/readable-stream.svg?branch=master)](https://travis-ci.org/nodejs/readable-stream) [![NPM](https://nodei.co/npm/readable-stream.png?downloads=true&downloadRank=true)](https://nodei.co/npm/readable-stream/) @@ -18,7 +18,7 @@ npm install --save readable-stream This package is a mirror of the Streams2 and Streams3 implementations in Node-core. -Full documentation may be found on the [Node.js website](https://nodejs.org/dist/v8.17.0/docs/api/stream.html). +Full documentation may be found on the [Node.js website](https://nodejs.org/dist/v8.11.1/docs/api/stream.html). If you want to guarantee a stable streams base, regardless of what version of Node you, or the users of your libraries are using, use **readable-stream** *only* and avoid the *"stream"* module in Node-core, for background see [this blogpost](http://r.va.gg/2014/06/why-i-dont-use-nodes-core-stream-module.html). diff --git a/sonorancad/node_modules/readable-stream/lib/_stream_readable.js b/sonorancad/node_modules/readable-stream/lib/_stream_readable.js index 3af95cb..0f80764 100644 --- a/sonorancad/node_modules/readable-stream/lib/_stream_readable.js +++ b/sonorancad/node_modules/readable-stream/lib/_stream_readable.js @@ -53,7 +53,7 @@ var Stream = require('./internal/streams/stream'); /**/ var Buffer = require('safe-buffer').Buffer; -var OurUint8Array = (typeof global !== 'undefined' ? global : typeof window !== 'undefined' ? window : typeof self !== 'undefined' ? self : {}).Uint8Array || function () {}; +var OurUint8Array = global.Uint8Array || function () {}; function _uint8ArrayToBuffer(chunk) { return Buffer.from(chunk); } @@ -623,8 +623,8 @@ Readable.prototype.pipe = function (dest, pipeOpts) { // also returned false. // => Check whether `dest` is still a piping destination. if ((state.pipesCount === 1 && state.pipes === dest || state.pipesCount > 1 && indexOf(state.pipes, dest) !== -1) && !cleanedUp) { - debug('false write response, pause', state.awaitDrain); - state.awaitDrain++; + debug('false write response, pause', src._readableState.awaitDrain); + src._readableState.awaitDrain++; increasedAwaitDrain = true; } src.pause(); @@ -718,7 +718,7 @@ Readable.prototype.unpipe = function (dest) { state.flowing = false; for (var i = 0; i < len; i++) { - dests[i].emit('unpipe', this, { hasUnpiped: false }); + dests[i].emit('unpipe', this, unpipeInfo); }return this; } diff --git a/sonorancad/node_modules/readable-stream/lib/_stream_writable.js b/sonorancad/node_modules/readable-stream/lib/_stream_writable.js index e1e897f..b0b0220 100644 --- a/sonorancad/node_modules/readable-stream/lib/_stream_writable.js +++ b/sonorancad/node_modules/readable-stream/lib/_stream_writable.js @@ -81,7 +81,7 @@ var Stream = require('./internal/streams/stream'); /**/ var Buffer = require('safe-buffer').Buffer; -var OurUint8Array = (typeof global !== 'undefined' ? global : typeof window !== 'undefined' ? window : typeof self !== 'undefined' ? self : {}).Uint8Array || function () {}; +var OurUint8Array = global.Uint8Array || function () {}; function _uint8ArrayToBuffer(chunk) { return Buffer.from(chunk); } @@ -349,7 +349,7 @@ Writable.prototype.uncork = function () { if (state.corked) { state.corked--; - if (!state.writing && !state.corked && !state.bufferProcessing && state.bufferedRequest) clearBuffer(this, state); + if (!state.writing && !state.corked && !state.finished && !state.bufferProcessing && state.bufferedRequest) clearBuffer(this, state); } }; @@ -591,7 +591,7 @@ Writable.prototype.end = function (chunk, encoding, cb) { } // ignore unnecessary end() calls. - if (!state.ending) endWritable(this, state, cb); + if (!state.ending && !state.finished) endWritable(this, state, cb); }; function needFinish(state) { @@ -652,9 +652,11 @@ function onCorkedFinish(corkReq, state, err) { cb(err); entry = entry.next; } - - // reuse the free corkReq. - state.corkedRequestsFree.next = corkReq; + if (state.corkedRequestsFree) { + state.corkedRequestsFree.next = corkReq; + } else { + state.corkedRequestsFree = corkReq; + } } Object.defineProperty(Writable.prototype, 'destroyed', { diff --git a/sonorancad/node_modules/readable-stream/lib/internal/streams/BufferList.js b/sonorancad/node_modules/readable-stream/lib/internal/streams/BufferList.js index 5e08097..aefc68b 100644 --- a/sonorancad/node_modules/readable-stream/lib/internal/streams/BufferList.js +++ b/sonorancad/node_modules/readable-stream/lib/internal/streams/BufferList.js @@ -56,6 +56,7 @@ module.exports = function () { BufferList.prototype.concat = function concat(n) { if (this.length === 0) return Buffer.alloc(0); + if (this.length === 1) return this.head.data; var ret = Buffer.allocUnsafe(n >>> 0); var p = this.head; var i = 0; diff --git a/sonorancad/node_modules/readable-stream/lib/internal/streams/destroy.js b/sonorancad/node_modules/readable-stream/lib/internal/streams/destroy.js index 85a8214..5a0a0d8 100644 --- a/sonorancad/node_modules/readable-stream/lib/internal/streams/destroy.js +++ b/sonorancad/node_modules/readable-stream/lib/internal/streams/destroy.js @@ -15,15 +15,9 @@ function destroy(err, cb) { if (readableDestroyed || writableDestroyed) { if (cb) { cb(err); - } else if (err) { - if (!this._writableState) { - pna.nextTick(emitErrorNT, this, err); - } else if (!this._writableState.errorEmitted) { - this._writableState.errorEmitted = true; - pna.nextTick(emitErrorNT, this, err); - } + } else if (err && (!this._writableState || !this._writableState.errorEmitted)) { + pna.nextTick(emitErrorNT, this, err); } - return this; } @@ -41,11 +35,9 @@ function destroy(err, cb) { this._destroy(err || null, function (err) { if (!cb && err) { - if (!_this._writableState) { - pna.nextTick(emitErrorNT, _this, err); - } else if (!_this._writableState.errorEmitted) { + pna.nextTick(emitErrorNT, _this, err); + if (_this._writableState) { _this._writableState.errorEmitted = true; - pna.nextTick(emitErrorNT, _this, err); } } else if (cb) { cb(err); @@ -67,8 +59,6 @@ function undestroy() { this._writableState.destroyed = false; this._writableState.ended = false; this._writableState.ending = false; - this._writableState.finalCalled = false; - this._writableState.prefinished = false; this._writableState.finished = false; this._writableState.errorEmitted = false; } diff --git a/sonorancad/node_modules/ssh2/README.md b/sonorancad/node_modules/ssh2/README.md index d0e6f7f..757020c 100644 --- a/sonorancad/node_modules/ssh2/README.md +++ b/sonorancad/node_modules/ssh2/README.md @@ -24,8 +24,6 @@ Changes (breaking or otherwise) in v1.0.0 can be found [here](https://github.com * [Server Examples](#server-examples) * [Password and public key authentication and non-interactive (exec) command execution](#password-and-public-key-authentication-and-non-interactive-exec-command-execution) * [SFTP-only server](#sftp-only-server) -* [Other Examples](#other-examples) - * [Generate an SSH key](#generate-an-ssh-key) * [API](#api) * [Client](#client) * [Client events](#client-events) @@ -527,7 +525,7 @@ new Server({ case 'publickey': if (ctx.key.algo !== allowedPubKey.type || !checkValue(ctx.key.data, allowedPubKey.getPublicSSH()) - || (ctx.signature && allowedPubKey.verify(ctx.blob, ctx.signature, ctx.hashAlgo) !== true)) { + || (ctx.signature && allowedPubKey.verify(ctx.blob, ctx.signature) !== true)) { return ctx.reject(); } break; @@ -672,32 +670,6 @@ new ssh2.Server({ }); ``` -## Other Examples - -### Generate an SSH key - -```js -const { utils: { generateKeyPair, generateKeyPairSync } } = require('ssh2'); - -// Generate unencrypted ED25519 SSH key synchronously -let keys = generateKeyPairSync('ed25519'); -// ... use `keys.public` and `keys.private` - -// Generate unencrypted ECDSA SSH key synchronously with a comment set -keys = generateKeyPairSync('ecdsa', { bits: 256, comment: 'node.js rules!' }); -// ... use `keys.public` and `keys.private` - -// Generate encrypted RSA SSH key asynchronously -generateKeyPair( - 'rsa', - { bits: 2048, passphrase: 'foobarbaz', cipher: 'aes256-cbc' }, - (err, keys) => { - if (err) throw err; - // ... use `keys.public` and `keys.private` - } -); -``` - You can find more examples in the `examples` directory of this repository. ## API @@ -876,7 +848,7 @@ You can find more examples in the `examples` directory of this repository. * Other supported names: * `ssh-dss` - * **authHandler** - _mixed_ - Must be an array of objects as described below, an array of strings containing valid authentication method names (username and credentials are pulled from the object passed to `connect()`), or a function with parameters `(methodsLeft, partialSuccess, callback)` where `methodsLeft` and `partialSuccess` are `null` on the first authentication attempt, otherwise are an array and boolean respectively. Return or call `callback()` with either the name of the authentication method or an object containing the method name along with method-specific details to try next (return/pass `false` to signal no more methods to try). Valid method names are: `'none', 'password', 'publickey', 'agent', 'keyboard-interactive', 'hostbased'`. **Default:** function that follows a set method order: None -> Password -> Private Key -> Agent (-> keyboard-interactive if `tryKeyboard` is `true`) -> Hostbased + * **authHandler** - _mixed_ - Either an array of objects as described below or a function with parameters `(methodsLeft, partialSuccess, callback)` where `methodsLeft` and `partialSuccess` are `null` on the first authentication attempt, otherwise are an array and boolean respectively. Return or call `callback()` with either the name of the authentication method or an object containing the method name along with method-specific details to try next (return/pass `false` to signal no more methods to try). Valid method names are: `'none', 'password', 'publickey', 'agent', 'keyboard-interactive', 'hostbased'`. **Default:** function that follows a set method order: None -> Password -> Private Key -> Agent (-> keyboard-interactive if `tryKeyboard` is `true`) -> Hostbased * When returning or calling `callback()` with an object, it can take one of the following forms: @@ -952,7 +924,7 @@ You can find more examples in the `examples` directory of this repository. * **hostHash** - _string_ - Any valid hash algorithm supported by node. The host's key is hashed using this algorithm and passed to the **hostVerifier** function as a hex string. **Default:** (none) - * **hostVerifier** - _function_ - Function with parameters `(key[, callback])` for verifying host keys, where `key` is either a hex _string_ of the hash of the key if `hostHash` was set, otherwise it is the raw host key in _Buffer_ form. Use `utils.parseKey()` to get the host key type. Return `true` to continue with the handshake or `false` to reject and disconnect, or call `callback()` with `true` or `false` if you need to perform asynchronous verification. **Default:** (auto-accept if `hostVerifier` is not set) + * **hostVerifier** - _function_ - Function with parameters `(hashedKey[, callback])` where `hashedKey` is a string hex hash of the host's key for verification purposes. Return `true` to continue with the handshake or `false` to reject and disconnect, or call `callback()` with `true` or `false` if you need to perform asynchronous verification. **Default:** (auto-accept if `hostVerifier` is not set) * **keepaliveCountMax** - _integer_ - How many consecutive, unanswered SSH-level keepalive packets that can be sent to the server before disconnection (similar to OpenSSH's ServerAliveCountMax config option). **Default:** `3` @@ -1026,8 +998,6 @@ You can find more examples in the `examples` directory of this repository. * **rekey**([< _function_ >callback]) - _(void)_ - Initiates a rekey with the server. If `callback` is supplied, it is added as a one-time handler for the `rekey` event. -* **setNoDelay**([< _boolean_ >noDelay]) - _Client_ - Calls [`setNoDelay()`](https://nodejs.org/docs/latest/api/net.html#socketsetnodelaynodelay) on the underlying socket. Disabling Nagle's algorithm improves latency at the expense of lower throughput. - * **sftp**(< _function_ >callback) - _(void)_ - Starts an SFTP session. `callback` has 2 parameters: < _Error_ >err, < _SFTP_ >sftp. For methods available on `sftp`, see the [`SFTP` client documentation](https://github.com/mscdex/ssh2/blob/master/SFTP.md). * **shell**([[< _mixed_ >window,] < _object_ >options]< _function_ >callback) - _(void)_ - Starts an interactive shell session on the server, with an optional `window` object containing pseudo-tty settings (see 'Pseudo-TTY settings'). If `window === false`, then no pseudo-tty is allocated. `options` supports the `x11` and `env` options as described in `exec()`. `callback` has 2 parameters: < _Error_ >err, < _Channel_ >stream. @@ -1056,18 +1026,16 @@ You can find more examples in the `examples` directory of this repository. * **comments** - _string_ - Any text that comes after the software name/version. - Example: the identification string `SSH-2.0-OpenSSH_6.6.1p1 Ubuntu-2ubuntu2` would be parsed as: + Example: the identification string `SSH-2.0-OpenSSH_6.6.1p1 Ubuntu-2ubuntu2` would be parsed as: - ```js - { - identRaw: 'SSH-2.0-OpenSSH_6.6.1p1 Ubuntu-2ubuntu2', +```js + { identRaw: 'SSH-2.0-OpenSSH_6.6.1p1 Ubuntu-2ubuntu2', version: { protocol: '2.0', software: 'OpenSSH_6.6.1p1' }, - comments: 'Ubuntu-2ubuntu2' - } - ``` + comments: 'Ubuntu-2ubuntu2' } +``` * **ip** - _string_ - The `remoteAddress` of the connection. @@ -1105,7 +1073,7 @@ You can find more examples in the `examples` directory of this repository. #### Connection events -* **authentication**(< _AuthContext_ >ctx) - The client has requested authentication. `ctx.username` contains the client username, `ctx.method` contains the requested authentication method, and `ctx.accept()` and `ctx.reject([< Array >authMethodsLeft[, < Boolean >isPartialSuccess]])` are used to accept or reject the authentication request respectively. `'abort'` is emitted if the client aborts the authentication request. Other properties/methods available on `ctx` depends on the `ctx.method` of authentication the client has requested: +* **authentication**(< _AuthContext_ >ctx) - The client has requested authentication. `ctx.username` contains the client username, `ctx.method` contains the requested authentication method, and `ctx.accept()` and `ctx.reject([< Array >authMethodsLeft[, < Boolean >isPartialSuccess]])` are used to accept or reject the authentication request respectively. `abort` is emitted if the client aborts the authentication request. Other properties/methods available on `ctx` depends on the `ctx.method` of authentication the client has requested: * `hostbased`: @@ -1123,8 +1091,6 @@ You can find more examples in the `examples` directory of this repository. * **signature** - _Buffer_ - This contains a signature to be verified that is passed to (along with the blob) `key.verify()` where `key` is a public key parsed with [`parseKey()`](#utilities). - * **hashAlgo** - _mixed_ - This is either `undefined` or a _string_ containing an explicit hash algorithm to be used during verification (passed to `key.verify()`). - * `keyboard-interactive`: * **prompt**(< _array_ >prompts[, < _string_ >title[, < _string_ >instructions]], < _function_ >callback) - _(void)_ - Send prompts to the client. `prompts` is an array of `{ prompt: 'Prompt text', echo: true }` objects (`prompt` being the prompt text and `echo` indicating whether the client's response to the prompt should be echoed to their display). `callback` is called with `(responses)`, where `responses` is an array of string responses matching up to the `prompts`. @@ -1149,8 +1115,6 @@ You can find more examples in the `examples` directory of this repository. * **signature** - _mixed_ - If the value is `undefined`, the client is only checking the validity of the `key`. If the value is a _Buffer_, then this contains a signature to be verified that is passed to (along with the blob) `key.verify()` where `key` is a public key parsed with [`parseKey()`](#utilities). - * **hashAlgo** - _mixed_ - This is either `undefined` or a _string_ containing an explicit hash algorithm to be used during verification (passed to `key.verify()`). - * **close**() - The client socket was closed. * **end**() - The client socket disconnected. @@ -1221,8 +1185,6 @@ You can find more examples in the `examples` directory of this repository. * **rekey**([< _function_ >callback]) - _(void)_ - Initiates a rekey with the client. If `callback` is supplied, it is added as a one-time handler for the `rekey` event. -* **setNoDelay**([< _boolean_ >noDelay]) - _Connection_ - Calls [`setNoDelay()`](https://nodejs.org/docs/latest/api/net.html#socketsetnodelaynodelay) on the underlying socket. Disabling Nagle's algorithm improves latency at the expense of lower throughput. - * **x11**(< _string_ >originAddr, < _integer_ >originPort, < _function_ >callback) - _(void)_ - Alert the client of an incoming X11 client connection from `originAddr` on port `originPort`. `callback` has 2 parameters: < _Error_ >err, < _Channel_ >stream. #### Session events @@ -1243,8 +1205,6 @@ You can find more examples in the `examples` directory of this repository. * **pty**(< _mixed_ >accept, < _mixed_ >reject, < _object_ >info) - The client requested allocation of a pseudo-TTY for this session. `accept` and `reject` are functions if the client requested a response. `info` has these properties: - * **term** - _string_ - The terminal type for the pseudo-TTY. - * **cols** - _integer_ - The number of columns for the pseudo-TTY. * **height** - _integer_ - The height of the pseudo-TTY in pixels. @@ -1418,22 +1378,6 @@ XCASE | Enable input and output of uppercase characters by preceding th ### Utilities -* **generateKeyPair**(< _string_ >keyType[, < _object_ >options], < _function_ >callback) - _(void)_ - Generates an SSH key pair of the given type. `keyType` may be one of `'rsa'`, `'ecdsa'`, or `'ed25519'` (node.js v12+). `callback` has the signature `(err, keys)` where `keys` is an _object_ containing `private` and `public` properties containing the generated SSH keys. `options` may contain: - - * **bits** - _integer_ - For ECDSA and RSA keys, this is the key strength. For ECDSA, this is restricted to `256`, `384`, or `521`. **Default:** (none) - - * **cipher** - _string_ - The (SSH, not OpenSSL) cipher to use to encrypt the key. **Default:** (none) - - * **comment** - _string_ - A comment to include in the private and public keys. **Default:** `''` - - * **format** - _string_ - The SSH key format to use. Currently only `'new'` is supported, which represents the current OpenSSH key formats. **Default:** `'new'` - - * **passphrase** - _mixed_ - The desired passphrase for encrypting the key. This can either be a string or _Buffer_. **Default:** (none) - - * **rounds** - _integer_ - For `'new'`-formatted SSH keys, this is the number of bcrypt rounds to use when generating cipher parameters for encrypted keys. **Default:** `16` - -* **generateKeyPairSync**(< _string_ >keyType[, < _object_ >options]) - _object_ - Generates an SSH key pair of the given type. This is a synchronous version of `generateKeyPair()`. - * **parseKey**(< _mixed_ >keyData[, < _string_ >passphrase]) - _mixed_ - Parses a private/public key in OpenSSH, RFC4716, or PPK format. For encrypted private keys, the key will be decrypted with the given `passphrase`. `keyData` can be a _Buffer_ or _string_ value containing the key contents. The returned value will be an array of objects (currently in the case of modern OpenSSH keys) or an object with these properties and methods: * **comment** - _string_ - The comment for the key diff --git a/sonorancad/node_modules/ssh2/SFTP.md b/sonorancad/node_modules/ssh2/SFTP.md index 9353ae8..a19f3ea 100644 --- a/sonorancad/node_modules/ssh2/SFTP.md +++ b/sonorancad/node_modules/ssh2/SFTP.md @@ -341,13 +341,7 @@ SFTP methods * **ext_openssh_lsetstat**(< _string_ >path, < _ATTRS_ >attributes, < _function_ >callback) - _(void)_ - **OpenSSH extension** Similar to `setstat()`, but instead sets attributes on symlinks. `callback` has 1 parameter: < _Error_ >err. -* **ext_openssh_expandPath**(< _string_ >path, < _function_ >callback) - _(void)_ - **OpenSSH extension** Similar to `realpath()`, but supports tilde-expansion, i.e. "\~", "\~/..." and "\~user/...". These paths are expanded using shell-like rules. `callback` has 2 parameters: < _Error_ >err, < _string_ >expandedPath. - -* **ext_copy_data**(< _Buffer_ >srcHandle, < _number_ >srcOffset, < _number_ >length, < _Buffer_ >dstHandle, < _number_ >dstOffset, < _function_ >callback) - _(void)_ - Performs a remote file copy. If `length` is 0, then the server will read from `srcHandle` until EOF is reached. `callback` has 1 parameter: < _Error_ >err. - -* **ext_home_dir**(< _string_ >username, < _function_ >callback) - _(void)_ - Retrieves the home directory of the user identified by `username`. Use an empty string to refer to the current user. `callback` has 2 parameters: < _Error_ >err, < _string_ >homeDirectory. - -* **ext_users_groups**(< _array_ >uids, < _array_ >gids, < _function_ >callback) - _(void)_ - Retrieves the user names and group names associated with the user IDs in `uids` and group IDs in `gids` respectively. Either array can be empty or contain one or more 32-bit unsigned integers. The retrieved user names and group names match the same order as the IDs in `uids` and `gids` respectively. If the server was unable to find a name for a given ID, it will use an empty string. `callback` has 3 parameters: < _Error_ >err, < _array_ >userNames, < _array_ >groupNames. +* **ext_openssh_expandPath**(< _string_ >path, < _function_ >callback) - _(void)_ - **OpenSSH extension** Similar to `realpath()`, but supports tilde-expansion, i.e. "\~", "\~/..." and "\~user/...". These paths are expanded using shell-like rules. `callback` has 2 parameters: < _Error_ >err, < _string_ >absPath. **Server-only methods** diff --git a/sonorancad/node_modules/ssh2/install.js b/sonorancad/node_modules/ssh2/install.js index 34f7f58..e536366 100644 --- a/sonorancad/node_modules/ssh2/install.js +++ b/sonorancad/node_modules/ssh2/install.js @@ -2,26 +2,19 @@ const { spawnSync } = require('child_process'); -const forceFailOnNonZero = (process.env.CI_CHECK_FAIL === 'ssh2'); - // Attempt to build the bundled optional binding -const args = [ +const result = spawnSync('node-gyp', [ `--target=${process.version}`, - `--real_openssl_major=${/^\d+/.exec(process.versions.openssl)[0]}`, - 'rebuild', -]; -const result = spawnSync('node-gyp', args, { + 'rebuild' +], { cwd: 'lib/protocol/crypto', encoding: 'utf8', shell: true, stdio: 'inherit', windowsHide: true, }); -if (result.error || result.status !== 0) { +if (result.error || result.status !== 0) console.log('Failed to build optional crypto binding'); - if (forceFailOnNonZero) - process.exit(1); -} else { +else console.log('Succeeded in building optional crypto binding'); -} process.exit(0); diff --git a/sonorancad/node_modules/ssh2/lib/Channel.js b/sonorancad/node_modules/ssh2/lib/Channel.js index 0120779..0bf5553 100644 --- a/sonorancad/node_modules/ssh2/lib/Channel.js +++ b/sonorancad/node_modules/ssh2/lib/Channel.js @@ -214,7 +214,6 @@ class Channel extends DuplexStream { destroy() { this.end(); this.close(); - return this; } // Session type-specific methods ============================================= diff --git a/sonorancad/node_modules/ssh2/lib/client.js b/sonorancad/node_modules/ssh2/lib/client.js index aa94ace..80f372a 100644 --- a/sonorancad/node_modules/ssh2/lib/client.js +++ b/sonorancad/node_modules/ssh2/lib/client.js @@ -273,14 +273,16 @@ class Client extends EventEmitter { let hostVerifier; if (typeof cfg.hostVerifier === 'function') { const hashCb = cfg.hostVerifier; - let hashAlgo; + let hasher; if (HASHES.indexOf(cfg.hostHash) !== -1) { // Default to old behavior of hashing on user's behalf - hashAlgo = cfg.hostHash; + hasher = createHash(cfg.hostHash); } hostVerifier = (key, verify) => { - if (hashAlgo) - key = createHash(hashAlgo).update(key).digest('hex'); + if (hasher) { + hasher.update(key); + key = hasher.digest('hex'); + } const ret = hashCb(key, verify); if (ret !== undefined) verify(ret); @@ -295,7 +297,6 @@ class Client extends EventEmitter { const DEBUG_HANDLER = (!debug ? undefined : (p, display, msg) => { debug(`Debug output from server: ${JSON.stringify(msg)}`); }); - let serverSigAlgs; const proto = this._protocol = new Protocol({ ident: this.config.ident, offer: (allOfferDefaults ? undefined : algorithms), @@ -347,17 +348,6 @@ class Client extends EventEmitter { if (name === 'ssh-userauth') tryNextAuth(); }, - EXT_INFO: (p, exts) => { - if (serverSigAlgs === undefined) { - for (const ext of exts) { - if (ext.name === 'server-sig-algs') { - serverSigAlgs = ext.algs; - return; - } - } - serverSigAlgs = null; - } - }, USERAUTH_BANNER: (p, msg) => { this.emit('banner', msg); }, @@ -370,51 +360,6 @@ class Client extends EventEmitter { this.emit('ready'); }, USERAUTH_FAILURE: (p, authMethods, partialSuccess) => { - // For key-based authentication, check if we should retry the current - // key with a different algorithm first - if (curAuth.keyAlgos) { - const oldKeyAlgo = curAuth.keyAlgos[0][0]; - if (debug) - debug(`Client: ${curAuth.type} (${oldKeyAlgo}) auth failed`); - curAuth.keyAlgos.shift(); - if (curAuth.keyAlgos.length) { - const [keyAlgo, hashAlgo] = curAuth.keyAlgos[0]; - switch (curAuth.type) { - case 'agent': - proto.authPK( - curAuth.username, - curAuth.agentCtx.currentKey(), - keyAlgo - ); - return; - case 'publickey': - proto.authPK(curAuth.username, curAuth.key, keyAlgo); - return; - case 'hostbased': - proto.authHostbased(curAuth.username, - curAuth.key, - curAuth.localHostname, - curAuth.localUsername, - keyAlgo, - (buf, cb) => { - const signature = curAuth.key.sign(buf, hashAlgo); - if (signature instanceof Error) { - signature.message = - `Error while signing with key: ${signature.message}`; - signature.level = 'client-authentication'; - this.emit('error', signature); - return tryNextAuth(); - } - - cb(signature); - }); - return; - } - } else { - curAuth.keyAlgos = undefined; - } - } - if (curAuth.type === 'agent') { const pos = curAuth.agentCtx.pos(); debug && debug(`Client: Agent key #${pos + 1} failed`); @@ -441,15 +386,10 @@ class Client extends EventEmitter { } }, USERAUTH_PK_OK: (p) => { - let keyAlgo; - let hashAlgo; - if (curAuth.keyAlgos) - [keyAlgo, hashAlgo] = curAuth.keyAlgos[0]; if (curAuth.type === 'agent') { const key = curAuth.agentCtx.currentKey(); - proto.authPK(curAuth.username, key, keyAlgo, (buf, cb) => { - const opts = { hash: hashAlgo }; - curAuth.agentCtx.sign(key, buf, opts, (err, signed) => { + proto.authPK(curAuth.username, key, (buf, cb) => { + curAuth.agentCtx.sign(key, buf, {}, (err, signed) => { if (err) { err.level = 'agent'; this.emit('error', err); @@ -461,8 +401,8 @@ class Client extends EventEmitter { }); }); } else if (curAuth.type === 'publickey') { - proto.authPK(curAuth.username, curAuth.key, keyAlgo, (buf, cb) => { - const signature = curAuth.key.sign(buf, hashAlgo); + proto.authPK(curAuth.username, curAuth.key, (buf, cb) => { + const signature = curAuth.key.sign(buf); if (signature instanceof Error) { signature.message = `Error signing data with key: ${signature.message}`; @@ -997,42 +937,16 @@ class Client extends EventEmitter { case 'password': proto.authPassword(username, curAuth.password); break; - case 'publickey': { - let keyAlgo; - curAuth.keyAlgos = getKeyAlgos(this, curAuth.key, serverSigAlgs); - if (curAuth.keyAlgos) { - if (curAuth.keyAlgos.length) { - keyAlgo = curAuth.keyAlgos[0][0]; - } else { - return skipAuth( - 'Skipping key authentication (no mutual hash algorithm)' - ); - } - } - proto.authPK(username, curAuth.key, keyAlgo); + case 'publickey': + proto.authPK(username, curAuth.key); break; - } - case 'hostbased': { - let keyAlgo; - let hashAlgo; - curAuth.keyAlgos = getKeyAlgos(this, curAuth.key, serverSigAlgs); - if (curAuth.keyAlgos) { - if (curAuth.keyAlgos.length) { - [keyAlgo, hashAlgo] = curAuth.keyAlgos[0]; - } else { - return skipAuth( - 'Skipping hostbased authentication (no mutual hash algorithm)' - ); - } - } - + case 'hostbased': proto.authHostbased(username, curAuth.key, curAuth.localHostname, curAuth.localUsername, - keyAlgo, (buf, cb) => { - const signature = curAuth.key.sign(buf, hashAlgo); + const signature = curAuth.key.sign(buf); if (signature instanceof Error) { signature.message = `Error while signing with key: ${signature.message}`; @@ -1044,7 +958,6 @@ class Client extends EventEmitter { cb(signature); }); break; - } case 'agent': curAuth.agentCtx.init((err) => { if (err) { @@ -1089,21 +1002,8 @@ class Client extends EventEmitter { tryNextAuth(); } else { const pos = curAuth.agentCtx.pos(); - let keyAlgo; - curAuth.keyAlgos = getKeyAlgos(this, key, serverSigAlgs); - if (curAuth.keyAlgos) { - if (curAuth.keyAlgos.length) { - keyAlgo = curAuth.keyAlgos[0][0]; - } else { - debug && debug( - `Agent: Skipping key #${pos + 1} (no mutual hash algorithm)` - ); - tryNextAgentKey(); - return; - } - } debug && debug(`Agent: Trying key #${pos + 1}`); - proto.authPK(curAuth.username, key, keyAlgo); + proto.authPK(curAuth.username, key); } } }; @@ -1134,6 +1034,7 @@ class Client extends EventEmitter { localAddress: this.config.localAddress, localPort: this.config.localPort }); + sock.setNoDelay(true); sock.setMaxListeners(0); sock.setTimeout(typeof cfg.timeout === 'number' ? cfg.timeout : 0); }; @@ -1613,13 +1514,6 @@ class Client extends EventEmitter { return this; } - - setNoDelay(noDelay) { - if (this._sock && typeof this._sock.setNoDelay === 'function') - this._sock.setNoDelay(noDelay); - - return this; - } } function openChannel(self, type, opts, cb) { @@ -2117,25 +2011,4 @@ function hostKeysProve(client, keys_, cb) { ); } -function getKeyAlgos(client, key, serverSigAlgs) { - switch (key.type) { - case 'ssh-rsa': - if (client._protocol._compatFlags & COMPAT.IMPLY_RSA_SHA2_SIGALGS) { - if (!Array.isArray(serverSigAlgs)) - serverSigAlgs = ['rsa-sha2-256', 'rsa-sha2-512']; - else - serverSigAlgs = ['rsa-sha2-256', 'rsa-sha2-512', ...serverSigAlgs]; - } - if (Array.isArray(serverSigAlgs)) { - if (serverSigAlgs.indexOf('rsa-sha2-256') !== -1) - return [['rsa-sha2-256', 'sha256']]; - if (serverSigAlgs.indexOf('rsa-sha2-512') !== -1) - return [['rsa-sha2-512', 'sha512']]; - if (serverSigAlgs.indexOf('ssh-rsa') === -1) - return []; - } - return [['ssh-rsa', 'sha1']]; - } -} - module.exports = Client; diff --git a/sonorancad/node_modules/ssh2/lib/index.js b/sonorancad/node_modules/ssh2/lib/index.js index 82c2c93..459952e 100644 --- a/sonorancad/node_modules/ssh2/lib/index.js +++ b/sonorancad/node_modules/ssh2/lib/index.js @@ -33,7 +33,6 @@ module.exports = { Server: require('./server.js'), utils: { parseKey, - ...require('./keygen.js'), sftp: { flagsToString, OPEN_MODE, diff --git a/sonorancad/node_modules/ssh2/lib/protocol/Protocol.js b/sonorancad/node_modules/ssh2/lib/protocol/Protocol.js index 7302488..94e12bc 100644 --- a/sonorancad/node_modules/ssh2/lib/protocol/Protocol.js +++ b/sonorancad/node_modules/ssh2/lib/protocol/Protocol.js @@ -44,14 +44,12 @@ const { bindingAvailable, NullCipher, NullDecipher } = require('./crypto.js'); const { COMPAT_CHECKS, DISCONNECT_REASON, - eddsaSupported, MESSAGE, SIGNALS, TERMINAL_MODE, } = require('./constants.js'); const { - DEFAULT_KEXINIT_CLIENT, - DEFAULT_KEXINIT_SERVER, + DEFAULT_KEXINIT, KexInit, kexinit, onKEXPayload, @@ -140,13 +138,8 @@ class Protocol { let onHandshakeComplete = config.onHandshakeComplete; if (typeof onHandshakeComplete !== 'function') onHandshakeComplete = noop; - let firstHandshake; this._onHandshakeComplete = (...args) => { this._debug && this._debug('Handshake completed'); - if (firstHandshake === undefined) - firstHandshake = true; - else - firstHandshake = false; // Process packets queued during a rekey where necessary const oldQueue = this._queue; @@ -172,9 +165,6 @@ class Protocol { this._debug && this._debug('... finished draining outbound queue'); } - if (firstHandshake && this._server && this._kex.remoteExtInfoEnabled) - sendExtInfo(this); - onHandshakeComplete(...args); }; this._queue = undefined; @@ -215,21 +205,11 @@ class Protocol { } let offer = config.offer; - if (typeof offer !== 'object' || offer === null) { - offer = (this._server ? DEFAULT_KEXINIT_SERVER : DEFAULT_KEXINIT_CLIENT); - } else if (offer.constructor !== KexInit) { - if (this._server) { - offer.kex = offer.kex.concat(['kex-strict-s-v00@openssh.com']); - } else { - offer.kex = offer.kex.concat([ - 'ext-info-c', - 'kex-strict-c-v00@openssh.com', - ]); - } + if (typeof offer !== 'object' || offer === null) + offer = DEFAULT_KEXINIT; + else if (offer.constructor !== KexInit) offer = new KexInit(offer); - } this._kex = undefined; - this._strictMode = undefined; this._kexinit = undefined; this._offer = offer; this._cipher = new NullCipher(0, this._onWrite); @@ -628,7 +608,7 @@ class Protocol { sendPacket(this, this._packetRW.write.finalize(packet)); } - authPK(username, pubKey, keyAlgo, cbSign) { + authPK(username, pubKey, cbSign) { if (this._server) throw new Error('Client-only method called in server mode'); @@ -639,15 +619,8 @@ class Protocol { const keyType = pubKey.type; pubKey = pubKey.getPublicSSH(); - if (typeof keyAlgo === 'function') { - cbSign = keyAlgo; - keyAlgo = undefined; - } - if (!keyAlgo) - keyAlgo = keyType; - const userLen = Buffer.byteLength(username); - const algoLen = Buffer.byteLength(keyAlgo); + const algoLen = Buffer.byteLength(keyType); const pubKeyLen = pubKey.length; const sessionID = this._kex.sessionID; const sesLen = sessionID.length; @@ -681,7 +654,7 @@ class Protocol { packet[p += 9] = (cbSign ? 1 : 0); writeUInt32BE(packet, algoLen, ++p); - packet.utf8Write(keyAlgo, p += 4, algoLen); + packet.utf8Write(keyType, p += 4, algoLen); writeUInt32BE(packet, pubKeyLen, p += algoLen); packet.set(pubKey, p += 4); @@ -724,7 +697,7 @@ class Protocol { packet[p += 9] = 1; writeUInt32BE(packet, algoLen, ++p); - packet.utf8Write(keyAlgo, p += 4, algoLen); + packet.utf8Write(keyType, p += 4, algoLen); writeUInt32BE(packet, pubKeyLen, p += algoLen); packet.set(pubKey, p += 4); @@ -732,7 +705,7 @@ class Protocol { writeUInt32BE(packet, 4 + algoLen + 4 + sigLen, p += pubKeyLen); writeUInt32BE(packet, algoLen, p += 4); - packet.utf8Write(keyAlgo, p += 4, algoLen); + packet.utf8Write(keyType, p += 4, algoLen); writeUInt32BE(packet, sigLen, p += algoLen); packet.set(signature, p += 4); @@ -747,7 +720,7 @@ class Protocol { sendPacket(this, this._packetRW.write.finalize(packet)); }); } - authHostbased(username, pubKey, hostname, userlocal, keyAlgo, cbSign) { + authHostbased(username, pubKey, hostname, userlocal, cbSign) { // TODO: Make DRY by sharing similar code with authPK() if (this._server) throw new Error('Client-only method called in server mode'); @@ -759,15 +732,8 @@ class Protocol { const keyType = pubKey.type; pubKey = pubKey.getPublicSSH(); - if (typeof keyAlgo === 'function') { - cbSign = keyAlgo; - keyAlgo = undefined; - } - if (!keyAlgo) - keyAlgo = keyType; - const userLen = Buffer.byteLength(username); - const algoLen = Buffer.byteLength(keyAlgo); + const algoLen = Buffer.byteLength(keyType); const pubKeyLen = pubKey.length; const sessionID = this._kex.sessionID; const sesLen = sessionID.length; @@ -794,7 +760,7 @@ class Protocol { data.utf8Write('hostbased', p += 4, 9); writeUInt32BE(data, algoLen, p += 9); - data.utf8Write(keyAlgo, p += 4, algoLen); + data.utf8Write(keyType, p += 4, algoLen); writeUInt32BE(data, pubKeyLen, p += algoLen); data.set(pubKey, p += 4); @@ -821,7 +787,7 @@ class Protocol { writeUInt32BE(packet, 4 + algoLen + 4 + sigLen, p += reqDataLen); writeUInt32BE(packet, algoLen, p += 4); - packet.utf8Write(keyAlgo, p += 4, algoLen); + packet.utf8Write(keyType, p += 4, algoLen); writeUInt32BE(packet, sigLen, p += algoLen); packet.set(signature, p += 4); @@ -2108,29 +2074,4 @@ function modesToBytes(modes) { return bytes; } -function sendExtInfo(proto) { - let serverSigAlgs = - 'ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521' - + 'rsa-sha2-512,rsa-sha2-256,ssh-rsa,ssh-dss'; - if (eddsaSupported) - serverSigAlgs = `ssh-ed25519,${serverSigAlgs}`; - const algsLen = Buffer.byteLength(serverSigAlgs); - - let p = proto._packetRW.write.allocStart; - const packet = proto._packetRW.write.alloc(1 + 4 + 4 + 15 + 4 + algsLen); - - packet[p] = MESSAGE.EXT_INFO; - - writeUInt32BE(packet, 1, ++p); - - writeUInt32BE(packet, 15, p += 4); - packet.utf8Write('server-sig-algs', p += 4, 15); - - writeUInt32BE(packet, algsLen, p += 15); - packet.utf8Write(serverSigAlgs, p += 4, algsLen); - - proto._debug && proto._debug('Outbound: Sending EXT_INFO'); - sendPacket(proto, proto._packetRW.write.finalize(packet)); -} - module.exports = Protocol; diff --git a/sonorancad/node_modules/ssh2/lib/protocol/SFTP.js b/sonorancad/node_modules/ssh2/lib/protocol/SFTP.js index 9f33c02..b10d9e5 100644 --- a/sonorancad/node_modules/ssh2/lib/protocol/SFTP.js +++ b/sonorancad/node_modules/ssh2/lib/protocol/SFTP.js @@ -7,7 +7,7 @@ const { Readable: ReadableStream, Writable: WritableStream } = require('stream'); -const { inherits, types: { isDate } } = require('util'); +const { inherits, isDate } = require('util'); const FastBuffer = Buffer[Symbol.species]; @@ -1588,247 +1588,12 @@ class SFTP extends EventEmitter { writeUInt32BE(buf, pathLen, p += 20); buf.utf8Write(path, p += 4, pathLen); - this._requests[reqid] = { - cb: (err, names) => { - if (typeof cb !== 'function') - return; - if (err) - return cb(err); - if (!names || !names.length) - return cb(new Error('Response missing expanded path')); - cb(undefined, names[0].filename); - } - }; - - const isBuffered = sendOrBuffer(this, buf); - if (this._debug) { - const status = (isBuffered ? 'Buffered' : 'Sending'); - this._debug(`SFTP: Outbound: ${status} expand-path@openssh.com`); - } - } - ext_copy_data(srcHandle, srcOffset, len, dstHandle, dstOffset, cb) { - if (this.server) - throw new Error('Client-only method called in server mode'); - - const ext = this._extensions['copy-data']; - if (ext !== '1') - throw new Error('Server does not support this extended request'); - - if (!Buffer.isBuffer(srcHandle)) - throw new Error('Source handle is not a Buffer'); - - if (!Buffer.isBuffer(dstHandle)) - throw new Error('Destination handle is not a Buffer'); - - /* - uint32 id - string "copy-data" - string read-from-handle - uint64 read-from-offset - uint64 read-data-length - string write-to-handle - uint64 write-to-offset - */ - let p = 0; - const buf = Buffer.allocUnsafe( - 4 + 1 - + 4 - + 4 + 9 - + 4 + srcHandle.length - + 8 - + 8 - + 4 + dstHandle.length - + 8 - ); - - writeUInt32BE(buf, buf.length - 4, p); - p += 4; - - buf[p] = REQUEST.EXTENDED; - ++p; - - const reqid = this._writeReqid = (this._writeReqid + 1) & MAX_REQID; - writeUInt32BE(buf, reqid, p); - p += 4; - - writeUInt32BE(buf, 9, p); - p += 4; - buf.utf8Write('copy-data', p, 9); - p += 9; - - writeUInt32BE(buf, srcHandle.length, p); - p += 4; - buf.set(srcHandle, p); - p += srcHandle.length; - - for (let i = 7; i >= 0; --i) { - buf[p + i] = srcOffset & 0xFF; - srcOffset /= 256; - } - p += 8; - - for (let i = 7; i >= 0; --i) { - buf[p + i] = len & 0xFF; - len /= 256; - } - p += 8; - - writeUInt32BE(buf, dstHandle.length, p); - p += 4; - buf.set(dstHandle, p); - p += dstHandle.length; - - for (let i = 7; i >= 0; --i) { - buf[p + i] = dstOffset & 0xFF; - dstOffset /= 256; - } - this._requests[reqid] = { cb }; const isBuffered = sendOrBuffer(this, buf); if (this._debug) { const status = (isBuffered ? 'Buffered' : 'Sending'); - this._debug(`SFTP: Outbound: ${status} copy-data`); - } - } - ext_home_dir(username, cb) { - if (this.server) - throw new Error('Client-only method called in server mode'); - - const ext = this._extensions['home-directory']; - if (ext !== '1') - throw new Error('Server does not support this extended request'); - - if (typeof username !== 'string') - throw new TypeError('username is not a string'); - - /* - uint32 id - string "home-directory" - string username - */ - let p = 0; - const usernameLen = Buffer.byteLength(username); - const buf = Buffer.allocUnsafe( - 4 + 1 - + 4 - + 4 + 14 - + 4 + usernameLen - ); - - writeUInt32BE(buf, buf.length - 4, p); - p += 4; - - buf[p] = REQUEST.EXTENDED; - ++p; - - const reqid = this._writeReqid = (this._writeReqid + 1) & MAX_REQID; - writeUInt32BE(buf, reqid, p); - p += 4; - - writeUInt32BE(buf, 14, p); - p += 4; - buf.utf8Write('home-directory', p, 14); - p += 14; - - writeUInt32BE(buf, usernameLen, p); - p += 4; - buf.utf8Write(username, p, usernameLen); - p += usernameLen; - - this._requests[reqid] = { - cb: (err, names) => { - if (typeof cb !== 'function') - return; - if (err) - return cb(err); - if (!names || !names.length) - return cb(new Error('Response missing home directory')); - cb(undefined, names[0].filename); - } - }; - - const isBuffered = sendOrBuffer(this, buf); - if (this._debug) { - const status = (isBuffered ? 'Buffered' : 'Sending'); - this._debug(`SFTP: Outbound: ${status} home-directory`); - } - } - ext_users_groups(uids, gids, cb) { - if (this.server) - throw new Error('Client-only method called in server mode'); - - const ext = this._extensions['users-groups-by-id@openssh.com']; - if (ext !== '1') - throw new Error('Server does not support this extended request'); - - if (!Array.isArray(uids)) - throw new TypeError('uids is not an array'); - for (const val of uids) { - if (!Number.isInteger(val) || val < 0 || val > (2 ** 32 - 1)) - throw new Error('uid values must all be 32-bit unsigned integers'); - } - if (!Array.isArray(gids)) - throw new TypeError('gids is not an array'); - for (const val of gids) { - if (!Number.isInteger(val) || val < 0 || val > (2 ** 32 - 1)) - throw new Error('gid values must all be 32-bit unsigned integers'); - } - - /* - uint32 id - string "users-groups-by-id@openssh.com" - string uids - uint32 uid1 - ... - string gids - uint32 gid1 - ... - */ - let p = 0; - const buf = Buffer.allocUnsafe( - 4 + 1 - + 4 - + 4 + 30 - + 4 + (4 * uids.length) - + 4 + (4 * gids.length) - ); - - writeUInt32BE(buf, buf.length - 4, p); - p += 4; - - buf[p] = REQUEST.EXTENDED; - ++p; - - const reqid = this._writeReqid = (this._writeReqid + 1) & MAX_REQID; - writeUInt32BE(buf, reqid, p); - p += 4; - - writeUInt32BE(buf, 30, p); - p += 4; - buf.utf8Write('users-groups-by-id@openssh.com', p, 30); - p += 30; - - writeUInt32BE(buf, 4 * uids.length, p); - p += 4; - for (const val of uids) { - writeUInt32BE(buf, val, p); - p += 4; - } - - writeUInt32BE(buf, 4 * gids.length, p); - p += 4; - for (const val of gids) { - writeUInt32BE(buf, val, p); - p += 4; - } - - this._requests[reqid] = { extended: 'users-groups-by-id@openssh.com', cb }; - - const isBuffered = sendOrBuffer(this, buf); - if (this._debug) { - const status = (isBuffered ? 'Buffered' : 'Sending'); - this._debug(`SFTP: Outbound: ${status} users-groups-by-id@openssh.com`); + this._debug(`SFTP: Outbound: ${status} expand-path@openssh.com`); } } // =========================================================================== @@ -2157,12 +1922,11 @@ function read_(self, handle, buf, off, len, position, cb, req_) { return; } - nb = (nb || 0); if (req.origOff === 0 && buf.length === req.nb) data = buf; else - data = bufferSlice(buf, req.origOff, req.origOff + req.nb + nb); - cb(undefined, req.nb + nb, data, req.position); + data = bufferSlice(buf, req.origOff, req.origOff + req.nb); + cb(undefined, req.nb + (nb || 0), data, req.position); }, buffer: undefined, }); @@ -2652,8 +2416,7 @@ function tryWritePayload(sftp, payload) { return; if (outgoing.window === 0) { - sftp._waitWindow = true; - sftp._chunkcb = drainBuffer; + sftp._waitWindow = true; // XXX: Unnecessary? return payload; } @@ -2830,13 +2593,14 @@ const CLIENT_HANDLERS = { */ const errorCode = bufferParser.readUInt32BE(); const errorMsg = bufferParser.readString(true); + const lang = bufferParser.skipString(); bufferParser.clear(); - // Note: we avoid checking that the error message and language tag are in - // the packet because there are some broken implementations that incorrectly - // omit them. The language tag in general was never really used amongst ssh - // implementations, so in the case of a missing error message we just - // default to something sensible. + if (lang === undefined) { + if (reqID !== undefined) + delete sftp._requests[reqID]; + return doFatalSFTPError(sftp, 'Malformed STATUS packet'); + } if (sftp._debug) { const jsonMsg = JSON.stringify(errorMsg); @@ -3078,44 +2842,6 @@ const CLIENT_HANDLERS = { req.cb(undefined, limits); return; } - case 'users-groups-by-id@openssh.com': { - /* - string usernames - string username1 - ... - string groupnames - string groupname1 - ... - */ - const usernameCount = bufferParser.readUInt32BE(); - if (usernameCount === undefined) - break; - const usernames = new Array(usernameCount); - for (let i = 0; i < usernames.length; ++i) - usernames[i] = bufferParser.readString(true); - - const groupnameCount = bufferParser.readUInt32BE(); - if (groupnameCount === undefined) - break; - const groupnames = new Array(groupnameCount); - for (let i = 0; i < groupnames.length; ++i) - groupnames[i] = bufferParser.readString(true); - if (groupnames.length > 0 - && groupnames[groupnames.length - 1] === undefined) { - break; - } - - if (sftp._debug) { - sftp._debug( - 'SFTP: Inbound: Received EXTENDED_REPLY ' - + `(id:${reqID}, ${req.extended})` - ); - } - bufferParser.clear(); - if (typeof req.cb === 'function') - req.cb(undefined, usernames, groupnames); - return; - } default: // Unknown extended request sftp._debug && sftp._debug( @@ -3661,7 +3387,7 @@ function ReadStream(sftp, path, options) { this.autoClose = options.autoClose === undefined ? true : options.autoClose; this.pos = 0; this.bytesRead = 0; - this.isClosed = false; + this.closed = false; this.handle = options.handle === undefined ? null : options.handle; this.sftp = sftp; @@ -3813,7 +3539,7 @@ function closeStream(stream, cb, err) { function onclose(er) { er = er || err; cb(er); - stream.isClosed = true; + stream.closed = true; if (!er) stream.emit('close'); } @@ -3856,7 +3582,7 @@ function WriteStream(sftp, path, options) { this.autoClose = options.autoClose === undefined ? true : options.autoClose; this.pos = 0; this.bytesWritten = 0; - this.isClosed = false; + this.closed = false; this.handle = options.handle === undefined ? null : options.handle; this.sftp = sftp; @@ -4016,7 +3742,7 @@ if (typeof WritableStream.prototype.destroy !== 'function') WriteStream.prototype._destroy = ReadStream.prototype._destroy; WriteStream.prototype.close = function(cb) { if (cb) { - if (this.isClosed) { + if (this.closed) { process.nextTick(cb); return; } diff --git a/sonorancad/node_modules/ssh2/lib/protocol/constants.js b/sonorancad/node_modules/ssh2/lib/protocol/constants.js index ad77592..5780da4 100644 --- a/sonorancad/node_modules/ssh2/lib/protocol/constants.js +++ b/sonorancad/node_modules/ssh2/lib/protocol/constants.js @@ -7,7 +7,7 @@ try { cpuInfo = require('cpu-features')(); } catch {} -const { bindingAvailable, CIPHER_INFO, MAC_INFO } = require('./crypto.js'); +const { bindingAvailable } = require('./crypto.js'); const eddsaSupported = (() => { if (typeof crypto.sign === 'function' @@ -76,11 +76,7 @@ const SUPPORTED_SERVER_HOST_KEY = DEFAULT_SERVER_HOST_KEY.concat([ ]); -const canUseCipher = (() => { - const ciphers = crypto.getCiphers(); - return (name) => ciphers.includes(CIPHER_INFO[name].sslName); -})(); -let DEFAULT_CIPHER = [ +const DEFAULT_CIPHER = [ // http://tools.ietf.org/html/rfc5647 'aes128-gcm@openssh.com', 'aes256-gcm@openssh.com', @@ -103,15 +99,12 @@ if (cpuInfo && cpuInfo.flags && !cpuInfo.flags.aes) { } else { DEFAULT_CIPHER.push('chacha20-poly1305@openssh.com'); } -DEFAULT_CIPHER = DEFAULT_CIPHER.filter(canUseCipher); const SUPPORTED_CIPHER = DEFAULT_CIPHER.concat([ 'aes256-cbc', 'aes192-cbc', 'aes128-cbc', 'blowfish-cbc', '3des-cbc', - 'aes128-gcm', - 'aes256-gcm', // http://tools.ietf.org/html/rfc4345#section-4: 'arcfour256', @@ -119,13 +112,9 @@ const SUPPORTED_CIPHER = DEFAULT_CIPHER.concat([ 'cast128-cbc', 'arcfour', -].filter(canUseCipher)); +]); -const canUseMAC = (() => { - const hashes = crypto.getHashes(); - return (name) => hashes.includes(MAC_INFO[name].sslName); -})(); const DEFAULT_MAC = [ 'hmac-sha2-256-etm@openssh.com', 'hmac-sha2-512-etm@openssh.com', @@ -133,7 +122,7 @@ const DEFAULT_MAC = [ 'hmac-sha2-256', 'hmac-sha2-512', 'hmac-sha1', -].filter(canUseMAC); +]; const SUPPORTED_MAC = DEFAULT_MAC.concat([ 'hmac-md5', 'hmac-sha2-256-96', // first 96 bits of HMAC-SHA256 @@ -141,7 +130,7 @@ const SUPPORTED_MAC = DEFAULT_MAC.concat([ 'hmac-ripemd160', 'hmac-sha1-96', // first 96 bits of HMAC-SHA1 'hmac-md5-96', // first 96 bits of HMAC-MD5 -].filter(canUseMAC)); +]); const DEFAULT_COMPRESSION = [ 'none', @@ -159,7 +148,6 @@ const COMPAT = { OLD_EXIT: 1 << 1, DYN_RPORT_BUG: 1 << 2, BUG_DHGEX_LARGE: 1 << 3, - IMPLY_RSA_SHA2_SIGALGS: 1 << 4, }; module.exports = { @@ -171,7 +159,6 @@ module.exports = { DEBUG: 4, SERVICE_REQUEST: 5, SERVICE_ACCEPT: 6, - EXT_INFO: 7, // RFC 8308 // Transport layer protocol -- algorithm negotiation (20-29) KEXINIT: 20, @@ -329,10 +316,9 @@ module.exports = { COMPAT, COMPAT_CHECKS: [ [ 'Cisco-1.25', COMPAT.BAD_DHGEX ], - [ /^Cisco-1[.]/, COMPAT.BUG_DHGEX_LARGE ], + [ /^Cisco-1\./, COMPAT.BUG_DHGEX_LARGE ], [ /^[0-9.]+$/, COMPAT.OLD_EXIT ], // old SSH.com implementations - [ /^OpenSSH_5[.][0-9]+/, COMPAT.DYN_RPORT_BUG ], - [ /^OpenSSH_7[.]4/, COMPAT.IMPLY_RSA_SHA2_SIGALGS ], + [ /^OpenSSH_5\.\d+/, COMPAT.DYN_RPORT_BUG ], ], // KEX proposal-related diff --git a/sonorancad/node_modules/ssh2/lib/protocol/crypto/binding.gyp b/sonorancad/node_modules/ssh2/lib/protocol/crypto/binding.gyp index 236a25f..29c3282 100644 --- a/sonorancad/node_modules/ssh2/lib/protocol/crypto/binding.gyp +++ b/sonorancad/node_modules/ssh2/lib/protocol/crypto/binding.gyp @@ -1,7 +1,4 @@ { - 'variables': { - 'real_openssl_major%': '0', - }, 'targets': [ { 'target_name': 'sshcrypto', @@ -12,12 +9,6 @@ 'src/binding.cc' ], 'cflags': [ '-O3' ], - - # Needed for OpenSSL 3.x/node.js v17.x+ - 'defines': [ - 'OPENSSL_API_COMPAT=0x10100000L', - 'REAL_OPENSSL_MAJOR=<(real_openssl_major)', - ], }, ], } diff --git a/sonorancad/node_modules/ssh2/lib/protocol/crypto/src/binding.cc b/sonorancad/node_modules/ssh2/lib/protocol/crypto/src/binding.cc index 559d768..c66dcf4 100644 --- a/sonorancad/node_modules/ssh2/lib/protocol/crypto/src/binding.cc +++ b/sonorancad/node_modules/ssh2/lib/protocol/crypto/src/binding.cc @@ -1,49 +1,16 @@ -#if defined(__GNUC__) && __GNUC__ >= 8 -#define DISABLE_WCAST_FUNCTION_TYPE _Pragma("GCC diagnostic push") _Pragma("GCC diagnostic ignored \"-Wcast-function-type\"") -#define DISABLE_WCAST_FUNCTION_TYPE_END _Pragma("GCC diagnostic pop") -#else -#define DISABLE_WCAST_FUNCTION_TYPE -#define DISABLE_WCAST_FUNCTION_TYPE_END -#endif - +// TODO: switch from obsolete EVP_* APIs in CCP #include #include #include -DISABLE_WCAST_FUNCTION_TYPE #include #include #include -DISABLE_WCAST_FUNCTION_TYPE_END - -#if NODE_MAJOR_VERSION >= 17 -# include -#endif #include #include #include -#ifndef _WIN32 -# include -#endif - -typedef int (*ctx_iv_len_func)(const EVP_CIPHER_CTX*); -typedef int (*ctx_key_len_func)(const EVP_CIPHER_CTX*); -typedef int (*ctx_get_block_size_func)(const EVP_CIPHER_CTX*); -typedef int (*cipher_flags_func)(const EVP_CIPHER*); -ctx_iv_len_func ctx_iv_len = nullptr; -ctx_key_len_func ctx_key_len = nullptr; -ctx_get_block_size_func ctx_get_block_size = nullptr; -cipher_flags_func cipher_flags = nullptr; - -#if REAL_OPENSSL_MAJOR < 3 -# undef EVP_DigestSignUpdate -# define EVP_DigestSignUpdate EVP_DigestUpdate -# undef EVP_PKEY_OP_SIGNCTX -# define EVP_PKEY_OP_SIGNCTX (1 << 6) -#endif - using namespace node; using namespace v8; using namespace std; @@ -95,14 +62,8 @@ class ChaChaPolyCipher : public ObjectWrap { explicit ChaChaPolyCipher() : ctx_main_(nullptr), ctx_pktlen_(nullptr), -#if REAL_OPENSSL_MAJOR >= 3 - mac_(nullptr), - mac_ctx_(nullptr) {} -#else md_ctx_(nullptr), - polykey_(nullptr), - polykey_ctx_(nullptr) {} -#endif + polykey_(nullptr) {} ~ChaChaPolyCipher() { clear(); @@ -110,23 +71,15 @@ class ChaChaPolyCipher : public ObjectWrap { void clear() { if (ctx_pktlen_) { + EVP_CIPHER_CTX_cleanup(ctx_pktlen_); EVP_CIPHER_CTX_free(ctx_pktlen_); ctx_pktlen_ = nullptr; } if (ctx_main_) { + EVP_CIPHER_CTX_cleanup(ctx_main_); EVP_CIPHER_CTX_free(ctx_main_); ctx_main_ = nullptr; } -#if REAL_OPENSSL_MAJOR >= 3 - if (mac_ctx_) { - EVP_MAC_CTX_free(mac_ctx_); - mac_ctx_ = nullptr; - } - if (mac_) { - EVP_MAC_free(mac_); - mac_ = nullptr; - } -#else if (polykey_) { EVP_PKEY_free(polykey_); polykey_ = nullptr; @@ -137,7 +90,6 @@ class ChaChaPolyCipher : public ObjectWrap { } // `polykey_ctx_` is not explicitly freed as it is freed implicitly when // `md_ctx_` is freed -#endif } ErrorType init(unsigned char* keys, size_t keys_len) { @@ -156,14 +108,7 @@ class ChaChaPolyCipher : public ObjectWrap { if ((ctx_pktlen_ = EVP_CIPHER_CTX_new()) == nullptr || (ctx_main_ = EVP_CIPHER_CTX_new()) == nullptr -#if REAL_OPENSSL_MAJOR >= 3 - || (mac_ = EVP_MAC_fetch(nullptr, - "POLY1305", - "provider=default")) == nullptr - || (mac_ctx_ = EVP_MAC_CTX_new(mac_)) == nullptr -#else || (md_ctx_ = EVP_MD_CTX_new()) == nullptr -#endif || EVP_EncryptInit_ex(ctx_pktlen_, cipher, nullptr, @@ -177,7 +122,7 @@ class ChaChaPolyCipher : public ObjectWrap { r = kErrOpenSSL; goto out; } - if (ctx_iv_len(ctx_pktlen_) != 16) { + if (EVP_CIPHER_CTX_iv_length(ctx_pktlen_) != 16) { r = kErrBadIVLen; goto out; } @@ -261,16 +206,6 @@ class ChaChaPolyCipher : public ObjectWrap { } // Poly1305 over ciphertext -#if REAL_OPENSSL_MAJOR >= 3 - // TODO: check if dup()'ing a "base" context instead of calling init() with - // the key each time is faster - if (EVP_MAC_init(mac_ctx_, polykey, sizeof(polykey), nullptr) != 1 - || EVP_MAC_update(mac_ctx_, packet, data_len) != 1 - || EVP_MAC_final(mac_ctx_, packet + data_len, &sig_len, sig_len) != 1) { - r = kErrOpenSSL; - goto out; - } -#else if (polykey_) { if (EVP_PKEY_CTX_ctrl(polykey_ctx_, -1, @@ -310,10 +245,9 @@ class ChaChaPolyCipher : public ObjectWrap { r = kErrOpenSSL; goto out; } -#endif - out: - return r; + out: + return r; } static NAN_METHOD(New) { @@ -394,14 +328,9 @@ class ChaChaPolyCipher : public ObjectWrap { EVP_CIPHER_CTX* ctx_main_; EVP_CIPHER_CTX* ctx_pktlen_; -#if REAL_OPENSSL_MAJOR >= 3 - EVP_MAC* mac_; - EVP_MAC_CTX* mac_ctx_; -#else EVP_MD_CTX* md_ctx_; EVP_PKEY* polykey_; EVP_PKEY_CTX* polykey_ctx_; -#endif }; class AESGCMCipher : public ObjectWrap { @@ -430,6 +359,7 @@ class AESGCMCipher : public ObjectWrap { void clear() { if (ctx_) { + EVP_CIPHER_CTX_cleanup(ctx_); EVP_CIPHER_CTX_free(ctx_); ctx_ = nullptr; } @@ -464,7 +394,12 @@ class AESGCMCipher : public ObjectWrap { goto out; } - if (key_len != static_cast(ctx_key_len(ctx_))) { + //~ if (iv_len != static_cast(EVP_CIPHER_CTX_iv_length(ctx_))) { + //~ r = kErrBadIVLen; + //~ goto out; + //~ } + + if (key_len != static_cast(EVP_CIPHER_CTX_key_length(ctx_))) { if (!EVP_CIPHER_CTX_set_key_length(ctx_, key_len)) { r = kErrBadKeyLen; goto out; @@ -661,12 +596,7 @@ class GenericCipher : public ObjectWrap { private: explicit GenericCipher() : ctx_(nullptr), -#if REAL_OPENSSL_MAJOR >= 3 - mac_(nullptr), - mac_ctx_base_(nullptr), -#else ctx_hmac_(nullptr), -#endif hmac_len_(0), is_etm_(0) {} @@ -676,24 +606,14 @@ class GenericCipher : public ObjectWrap { void clear() { if (ctx_) { + EVP_CIPHER_CTX_cleanup(ctx_); EVP_CIPHER_CTX_free(ctx_); ctx_ = nullptr; } -#if REAL_OPENSSL_MAJOR >= 3 - if (mac_ctx_base_) { - EVP_MAC_CTX_free(mac_ctx_base_); - mac_ctx_base_ = nullptr; - } - if (mac_) { - EVP_MAC_free(mac_); - mac_ = nullptr; - } -#else if (ctx_hmac_) { HMAC_CTX_free(ctx_hmac_); ctx_hmac_ = nullptr; } -#endif } ErrorType init(const char* name, @@ -707,11 +627,7 @@ class GenericCipher : public ObjectWrap { int is_etm) { ErrorType r = kErrNone; -#if REAL_OPENSSL_MAJOR >= 3 - OSSL_PARAM params[2]; -#else const EVP_MD* md; -#endif const EVP_CIPHER* const cipher = EVP_get_cipherbyname(name); if (cipher == nullptr) { r = kErrOpenSSL; @@ -724,12 +640,12 @@ class GenericCipher : public ObjectWrap { goto out; } - if (iv_len != static_cast(ctx_iv_len(ctx_))) { + if (iv_len != static_cast(EVP_CIPHER_CTX_iv_length(ctx_))) { r = kErrBadIVLen; goto out; } - if (key_len != static_cast(ctx_key_len(ctx_))) { + if (key_len != static_cast(EVP_CIPHER_CTX_key_length(ctx_))) { if (!EVP_CIPHER_CTX_set_key_length(ctx_, key_len)) { r = kErrBadKeyLen; goto out; @@ -769,28 +685,6 @@ class GenericCipher : public ObjectWrap { } } -#if REAL_OPENSSL_MAJOR >= 3 - if ((mac_ = EVP_MAC_fetch(nullptr, - "HMAC", - "provider=default")) == nullptr) { - r = kErrOpenSSL; - goto out; - } - if ((mac_ctx_base_ = EVP_MAC_CTX_new(mac_)) == nullptr) { - r = kErrOpenSSL; - goto out; - } - params[0] = OSSL_PARAM_construct_utf8_string("digest", - const_cast(hmac_name), - 0); - params[1] = OSSL_PARAM_END; - if (EVP_MAC_init(mac_ctx_base_, hmac_key, hmac_key_len, params) != 1) { - EVP_MAC_CTX_free(mac_ctx_base_); - r = kErrOpenSSL; - goto out; - } - hmac_len_ = EVP_MAC_CTX_get_mac_size(mac_ctx_base_); -#else md = EVP_get_digestbyname(hmac_name); if (md == nullptr) { r = kErrBadHMACName; @@ -804,7 +698,6 @@ class GenericCipher : public ObjectWrap { } hmac_len_ = HMAC_size(ctx_hmac_); -#endif is_etm_ = is_etm; out: @@ -842,51 +735,39 @@ class GenericCipher : public ObjectWrap { r = kErrPartialEncrypt; goto out; } - } - - // Calculate HMAC - { -#if REAL_OPENSSL_MAJOR >= 3 - size_t outlen = hmac_len_; - EVP_MAC_CTX* mac_ctx = EVP_MAC_CTX_dup(mac_ctx_base_); - if (mac_ctx == nullptr) { - r = kErrOpenSSL; - goto out; - } - if (EVP_MAC_update(mac_ctx, seqbuf, sizeof(seqbuf)) != 1 - || EVP_MAC_update(mac_ctx, packet, data_len) != 1 - || EVP_MAC_final(mac_ctx, - packet + data_len, - reinterpret_cast(&outlen), - outlen) != 1) { - EVP_MAC_CTX_free(mac_ctx); - r = kErrOpenSSL; - goto out; - } - if (outlen != hmac_len_) { - EVP_MAC_CTX_free(mac_ctx); - r = kErrBadHMACLen; - goto out; + // HMAC over unencrypted packet length and ciphertext + { + unsigned int outlen = hmac_len_; + if (HMAC_Init_ex(ctx_hmac_, nullptr, 0, nullptr, nullptr) != 1 + || HMAC_Update(ctx_hmac_, seqbuf, sizeof(seqbuf)) != 1 + || HMAC_Update(ctx_hmac_, packet, data_len) != 1 + || HMAC_Final(ctx_hmac_, packet + data_len, &outlen) != 1) { + r = kErrOpenSSL; + goto out; + } + if (outlen != hmac_len_) { + r = kErrBadHMACLen; + goto out; + } } - EVP_MAC_CTX_free(mac_ctx); -#else - unsigned int outlen = hmac_len_; - if (HMAC_Init_ex(ctx_hmac_, nullptr, 0, nullptr, nullptr) != 1 - || HMAC_Update(ctx_hmac_, seqbuf, sizeof(seqbuf)) != 1 - || HMAC_Update(ctx_hmac_, packet, data_len) != 1 - || HMAC_Final(ctx_hmac_, packet + data_len, &outlen) != 1) { - r = kErrOpenSSL; - goto out; - } - if (outlen != hmac_len_) { - r = kErrBadHMACLen; - goto out; + } else { + // HMAC over plaintext + { + unsigned int outlen = hmac_len_; + if (HMAC_Init_ex(ctx_hmac_, nullptr, 0, nullptr, nullptr) != 1 + || HMAC_Update(ctx_hmac_, seqbuf, sizeof(seqbuf)) != 1 + || HMAC_Update(ctx_hmac_, packet, data_len) != 1 + || HMAC_Final(ctx_hmac_, packet + data_len, &outlen) != 1) { + r = kErrOpenSSL; + goto out; + } + if (outlen != hmac_len_) { + r = kErrBadHMACLen; + goto out; + } } -#endif - } - if (!is_etm_) { // Encrypt packet if (EVP_EncryptUpdate(ctx_, packet, @@ -1020,14 +901,8 @@ class GenericCipher : public ObjectWrap { } EVP_CIPHER_CTX* ctx_; -#if REAL_OPENSSL_MAJOR >= 3 - EVP_MAC* mac_; - EVP_MAC_CTX* mac_ctx_base_; - size_t hmac_len_; -#else HMAC_CTX* ctx_hmac_; unsigned int hmac_len_; -#endif int is_etm_; }; @@ -1055,14 +930,8 @@ class ChaChaPolyDecipher : public ObjectWrap { explicit ChaChaPolyDecipher() : ctx_main_(nullptr), ctx_pktlen_(nullptr), -#if REAL_OPENSSL_MAJOR >= 3 - mac_(nullptr), - mac_ctx_(nullptr) {} -#else md_ctx_(nullptr), - polykey_(nullptr), - polykey_ctx_(nullptr) {} -#endif + polykey_(nullptr) {} ~ChaChaPolyDecipher() { clear(); @@ -1070,23 +939,15 @@ class ChaChaPolyDecipher : public ObjectWrap { void clear() { if (ctx_pktlen_) { + EVP_CIPHER_CTX_cleanup(ctx_pktlen_); EVP_CIPHER_CTX_free(ctx_pktlen_); ctx_pktlen_ = nullptr; } if (ctx_main_) { + EVP_CIPHER_CTX_cleanup(ctx_main_); EVP_CIPHER_CTX_free(ctx_main_); ctx_main_ = nullptr; } -#if REAL_OPENSSL_MAJOR >= 3 - if (mac_ctx_) { - EVP_MAC_CTX_free(mac_ctx_); - mac_ctx_ = nullptr; - } - if (mac_) { - EVP_MAC_free(mac_); - mac_ = nullptr; - } -#else if (polykey_) { EVP_PKEY_free(polykey_); polykey_ = nullptr; @@ -1097,7 +958,6 @@ class ChaChaPolyDecipher : public ObjectWrap { } // `polykey_ctx_` is not explicitly freed as it is freed implicitly when // `md_ctx_` is freed -#endif } ErrorType init(unsigned char* keys, size_t keys_len) { @@ -1116,14 +976,7 @@ class ChaChaPolyDecipher : public ObjectWrap { if ((ctx_pktlen_ = EVP_CIPHER_CTX_new()) == nullptr || (ctx_main_ = EVP_CIPHER_CTX_new()) == nullptr -#if REAL_OPENSSL_MAJOR >= 3 - || (mac_ = EVP_MAC_fetch(nullptr, - "POLY1305", - "provider=default")) == nullptr - || (mac_ctx_ = EVP_MAC_CTX_new(mac_)) == nullptr -#else || (md_ctx_ = EVP_MD_CTX_new()) == nullptr -#endif || EVP_DecryptInit_ex(ctx_pktlen_, cipher, nullptr, @@ -1137,7 +990,7 @@ class ChaChaPolyDecipher : public ObjectWrap { r = kErrOpenSSL; goto out; } - if (ctx_iv_len(ctx_pktlen_) != 16) { + if (EVP_CIPHER_CTX_iv_length(ctx_pktlen_) != 16) { r = kErrBadIVLen; goto out; } @@ -1230,17 +1083,6 @@ class ChaChaPolyDecipher : public ObjectWrap { } // Poly1305 over ciphertext -#if REAL_OPENSSL_MAJOR >= 3 - // TODO: check if dup()'ing a "base" context instead of calling init() with - // the key each time is faster - if (EVP_MAC_init(mac_ctx_, polykey, sizeof(polykey), nullptr) != 1 - || EVP_MAC_update(mac_ctx_, length_bytes, sizeof(length_bytes)) != 1 - || EVP_MAC_update(mac_ctx_, packet, packet_len) != 1 - || EVP_MAC_final(mac_ctx_, calc_mac, &sig_len, sig_len) != 1) { - r = kErrOpenSSL; - goto out; - } -#else if (polykey_) { if (EVP_PKEY_CTX_ctrl(polykey_ctx_, -1, @@ -1286,7 +1128,6 @@ class ChaChaPolyDecipher : public ObjectWrap { r = kErrOpenSSL; goto out; } -#endif // Compare MACs if (CRYPTO_memcmp(mac, calc_mac, sizeof(calc_mac))) { @@ -1448,14 +1289,9 @@ class ChaChaPolyDecipher : public ObjectWrap { unsigned char length_bytes[4]; EVP_CIPHER_CTX* ctx_main_; EVP_CIPHER_CTX* ctx_pktlen_; -#if REAL_OPENSSL_MAJOR >= 3 - EVP_MAC* mac_; - EVP_MAC_CTX* mac_ctx_; -#else EVP_MD_CTX* md_ctx_; EVP_PKEY* polykey_; EVP_PKEY_CTX* polykey_ctx_; -#endif }; class AESGCMDecipher : public ObjectWrap { @@ -1484,6 +1320,7 @@ class AESGCMDecipher : public ObjectWrap { void clear() { if (ctx_) { + EVP_CIPHER_CTX_cleanup(ctx_); EVP_CIPHER_CTX_free(ctx_); ctx_ = nullptr; } @@ -1518,7 +1355,12 @@ class AESGCMDecipher : public ObjectWrap { goto out; } - if (key_len != static_cast(ctx_key_len(ctx_))) { + //~ if (iv_len != static_cast(EVP_CIPHER_CTX_iv_length(ctx_))) { + //~ r = kErrBadIVLen; + //~ goto out; + //~ } + + if (key_len != static_cast(EVP_CIPHER_CTX_key_length(ctx_))) { if (!EVP_CIPHER_CTX_set_key_length(ctx_, key_len)) { r = kErrBadKeyLen; goto out; @@ -1726,12 +1568,7 @@ class GenericDecipher : public ObjectWrap { private: explicit GenericDecipher() : ctx_(nullptr), -#if REAL_OPENSSL_MAJOR >= 3 - mac_(nullptr), - mac_ctx_base_(nullptr), -#else ctx_hmac_(nullptr), -#endif hmac_len_(0), is_etm_(0) {} @@ -1741,24 +1578,14 @@ class GenericDecipher : public ObjectWrap { void clear() { if (ctx_) { + EVP_CIPHER_CTX_cleanup(ctx_); EVP_CIPHER_CTX_free(ctx_); ctx_ = nullptr; } -#if REAL_OPENSSL_MAJOR >= 3 - if (mac_ctx_base_) { - EVP_MAC_CTX_free(mac_ctx_base_); - mac_ctx_base_ = nullptr; - } - if (mac_) { - EVP_MAC_free(mac_); - mac_ = nullptr; - } -#else if (ctx_hmac_) { HMAC_CTX_free(ctx_hmac_); ctx_hmac_ = nullptr; } -#endif } ErrorType init(const char* name, @@ -1773,11 +1600,7 @@ class GenericDecipher : public ObjectWrap { size_t hmac_actual_len) { ErrorType r = kErrNone; -#if REAL_OPENSSL_MAJOR >= 3 - OSSL_PARAM params[2]; -#else const EVP_MD* md; -#endif const EVP_CIPHER* const cipher = EVP_get_cipherbyname(name); if (cipher == nullptr) { r = kErrOpenSSL; @@ -1790,12 +1613,12 @@ class GenericDecipher : public ObjectWrap { goto out; } - if (iv_len != static_cast(ctx_iv_len(ctx_))) { + if (iv_len != static_cast(EVP_CIPHER_CTX_iv_length(ctx_))) { r = kErrBadIVLen; goto out; } - if (key_len != static_cast(ctx_key_len(ctx_))) { + if (key_len != static_cast(EVP_CIPHER_CTX_key_length(ctx_))) { if (!EVP_CIPHER_CTX_set_key_length(ctx_, key_len)) { r = kErrBadKeyLen; goto out; @@ -1835,28 +1658,6 @@ class GenericDecipher : public ObjectWrap { } } -#if REAL_OPENSSL_MAJOR >= 3 - if ((mac_ = EVP_MAC_fetch(nullptr, - "HMAC", - "provider=default")) == nullptr) { - r = kErrOpenSSL; - goto out; - } - if ((mac_ctx_base_ = EVP_MAC_CTX_new(mac_)) == nullptr) { - r = kErrOpenSSL; - goto out; - } - params[0] = OSSL_PARAM_construct_utf8_string("digest", - const_cast(hmac_name), - 0); - params[1] = OSSL_PARAM_END; - if (EVP_MAC_init(mac_ctx_base_, hmac_key, hmac_key_len, params) != 1) { - EVP_MAC_CTX_free(mac_ctx_base_); - r = kErrOpenSSL; - goto out; - } - hmac_len_ = EVP_MAC_CTX_get_mac_size(mac_ctx_base_); -#else md = EVP_get_digestbyname(hmac_name); if (md == nullptr) { r = kErrBadHMACName; @@ -1870,14 +1671,9 @@ class GenericDecipher : public ObjectWrap { } hmac_len_ = HMAC_size(ctx_hmac_); -#endif hmac_actual_len_ = hmac_actual_len; is_etm_ = is_etm; -#if REAL_OPENSSL_MAJOR >= 3 switch (EVP_CIPHER_CTX_mode(ctx_)) { -#else - switch (cipher_flags(EVP_CIPHER_CTX_cipher(ctx_)) & EVP_CIPH_MODE) { -#endif case EVP_CIPH_STREAM_CIPHER: case EVP_CIPH_CTR_MODE: is_stream_ = 1; @@ -1885,7 +1681,7 @@ class GenericDecipher : public ObjectWrap { default: is_stream_ = 0; } - block_size_ = ctx_get_block_size(ctx_); + block_size_ = EVP_CIPHER_CTX_block_size(ctx_); out: return r; @@ -1933,7 +1729,47 @@ class GenericDecipher : public ObjectWrap { ((uint8_t*)(seqbuf))[2] = (seqno >> 8) & 0xff; ((uint8_t*)(seqbuf))[3] = seqno & 0xff; - if (!is_etm_) { + if (is_etm_) { + // `first_block` for ETM should just be the unencrypted packet length + if (first_block_len != 4) { + r = kErrBadBlockLen; + goto out; + } + + // HMAC over unencrypted packet length and ciphertext + { + unsigned int outlen = hmac_len_; + if (HMAC_Init_ex(ctx_hmac_, nullptr, 0, nullptr, nullptr) != 1 + || HMAC_Update(ctx_hmac_, seqbuf, sizeof(seqbuf)) != 1 + || HMAC_Update(ctx_hmac_, first_block, 4) != 1 + || HMAC_Update(ctx_hmac_, packet, packet_len) != 1 + || HMAC_Final(ctx_hmac_, calc_mac, &outlen) != 1) { + r = kErrOpenSSL; + goto out; + } + + if (outlen != hmac_len_ || mac_len != hmac_len_) { + r = kErrBadHMACLen; + goto out; + } + + // Compare MACs + if (CRYPTO_memcmp(mac, calc_mac, hmac_len_)) { + r = kErrInvalidMAC; + goto out; + } + } + + // Decrypt packet + if (EVP_DecryptUpdate(ctx_, packet, &outlen, packet, packet_len) != 1) { + r = kErrOpenSSL; + goto out; + } + if (static_cast(outlen) != packet_len) { + r = kErrPartialDecrypt; + goto out; + } + } else { // `first_block` for non-ETM should be a completely decrypted first block if (!is_stream_ && first_block_len != block_size_) { r = kErrBadBlockLen; @@ -1954,73 +1790,29 @@ class GenericDecipher : public ObjectWrap { r = kErrPartialDecrypt; goto out; } - } - - // Calculate and compare HMAC - { -#if REAL_OPENSSL_MAJOR >= 3 - size_t outlen = hmac_len_; - - EVP_MAC_CTX* mac_ctx = EVP_MAC_CTX_dup(mac_ctx_base_); - if (mac_ctx == nullptr) { - r = kErrOpenSSL; - goto out; - } - if (EVP_MAC_update(mac_ctx, seqbuf, sizeof(seqbuf)) != 1 - || EVP_MAC_update(mac_ctx, first_block, 4) != 1 - || EVP_MAC_update(mac_ctx, packet, packet_len) != 1 - || EVP_MAC_final(mac_ctx, - calc_mac, - &outlen, - outlen) != 1) { - EVP_MAC_CTX_free(mac_ctx); - r = kErrOpenSSL; - goto out; - } - if (outlen != hmac_len_ || mac_len != hmac_actual_len_) { - EVP_MAC_CTX_free(mac_ctx); - r = kErrBadHMACLen; - goto out; - } - EVP_MAC_CTX_free(mac_ctx); -#else - unsigned int outlen = hmac_len_; - if (HMAC_Init_ex(ctx_hmac_, nullptr, 0, nullptr, nullptr) != 1 - || HMAC_Update(ctx_hmac_, seqbuf, sizeof(seqbuf)) != 1 - || HMAC_Update(ctx_hmac_, first_block, 4) != 1 - || HMAC_Update(ctx_hmac_, packet, packet_len) != 1 - || HMAC_Final(ctx_hmac_, calc_mac, &outlen) != 1) { - r = kErrOpenSSL; - goto out; - } - if (outlen != hmac_len_ || mac_len != hmac_actual_len_) { - r = kErrBadHMACLen; - goto out; - } -#endif - - // Compare MACs - if (CRYPTO_memcmp(mac, calc_mac, hmac_actual_len_)) { - r = kErrInvalidMAC; - goto out; - } - } - if (is_etm_) { - // `first_block` for ETM should just be the unencrypted packet length - if (first_block_len != 4) { - r = kErrBadBlockLen; - goto out; - } - - // Decrypt packet - if (EVP_DecryptUpdate(ctx_, packet, &outlen, packet, packet_len) != 1) { - r = kErrOpenSSL; - goto out; - } - if (static_cast(outlen) != packet_len) { - r = kErrPartialDecrypt; - goto out; + // HMAC over plaintext + { + unsigned int outlen = hmac_len_; + if (HMAC_Init_ex(ctx_hmac_, nullptr, 0, nullptr, nullptr) != 1 + || HMAC_Update(ctx_hmac_, seqbuf, sizeof(seqbuf)) != 1 + || HMAC_Update(ctx_hmac_, first_block, 4) != 1 + || HMAC_Update(ctx_hmac_, packet, packet_len) != 1 + || HMAC_Final(ctx_hmac_, calc_mac, &outlen) != 1) { + r = kErrOpenSSL; + goto out; + } + + if (outlen != hmac_len_ || mac_len != hmac_actual_len_) { + r = kErrBadHMACLen; + goto out; + } + + // Compare MACs + if (CRYPTO_memcmp(mac, calc_mac, hmac_actual_len_)) { + r = kErrInvalidMAC; + goto out; + } } } @@ -2189,14 +1981,8 @@ class GenericDecipher : public ObjectWrap { } EVP_CIPHER_CTX* ctx_; -#if REAL_OPENSSL_MAJOR >= 3 - EVP_MAC* mac_; - EVP_MAC_CTX* mac_ctx_base_; - size_t hmac_len_; -#else HMAC_CTX* ctx_hmac_; unsigned int hmac_len_; -#endif unsigned int hmac_actual_len_; uint8_t is_etm_; uint8_t is_stream_; @@ -2205,63 +1991,6 @@ class GenericDecipher : public ObjectWrap { NAN_MODULE_INIT(init) { - // These are needed because node-gyp (as of this writing) does not use the - // proper (OpenSSL) system headers when node was built against a shared - // version of OpenSSL. Usually this isn't an issue because OSes that build - // node in this way typically use the same version of OpenSSL as was bundled - // with node for a particular node version for the best compatibility. However - // with the inclusion of OpenSSL 3.x in node v17.x, some OSes are still - // linking with a shared OpenSSL 1.x, which can cause both compilation and - // runtime errors because of changes in OpenSSL's code. - // - // For that reason, we need to make sure we need to resolve some specific - // symbols at runtime to workaround these buggy situations. -#ifdef _WIN32 -# define load_sym(name) GetProcAddress(GetModuleHandle(NULL), name) -#else -# define load_sym(name) dlsym(RTLD_DEFAULT, name) -#endif - if (!ctx_iv_len) { - ctx_iv_len = reinterpret_cast( - load_sym("EVP_CIPHER_CTX_get_iv_length") - ); - if (!ctx_iv_len) { - ctx_iv_len = reinterpret_cast( - load_sym("EVP_CIPHER_CTX_iv_length") - ); - } - } - if (!ctx_key_len) { - ctx_key_len = reinterpret_cast( - load_sym("EVP_CIPHER_CTX_get_key_length") - ); - if (!ctx_key_len) { - ctx_key_len = reinterpret_cast( - load_sym("EVP_CIPHER_CTX_key_length") - ); - } - } - if (!cipher_flags) { - cipher_flags = reinterpret_cast( - load_sym("EVP_CIPHER_get_flags") - ); - if (!cipher_flags) { - cipher_flags = reinterpret_cast( - load_sym("EVP_CIPHER_flags") - ); - } - } - if (!ctx_get_block_size) { - ctx_get_block_size = reinterpret_cast( - load_sym("EVP_CIPHER_CTX_get_block_size") - ); - if (!ctx_get_block_size) { - ctx_get_block_size = reinterpret_cast( - load_sym("EVP_CIPHER_CTX_block_size") - ); - } - } - ChaChaPolyCipher::Init(target); AESGCMCipher::Init(target); GenericCipher::Init(target); @@ -2271,6 +2000,4 @@ NAN_MODULE_INIT(init) { GenericDecipher::Init(target); } -DISABLE_WCAST_FUNCTION_TYPE -NAN_MODULE_WORKER_ENABLED(sshcrypto, init) -DISABLE_WCAST_FUNCTION_TYPE_END +NODE_MODULE(sshcrypto, init) diff --git a/sonorancad/node_modules/ssh2/lib/protocol/handlers.misc.js b/sonorancad/node_modules/ssh2/lib/protocol/handlers.misc.js index 24580be..647564b 100644 --- a/sonorancad/node_modules/ssh2/lib/protocol/handlers.misc.js +++ b/sonorancad/node_modules/ssh2/lib/protocol/handlers.misc.js @@ -146,48 +146,6 @@ module.exports = { const handler = self._handlers.SERVICE_ACCEPT; handler && handler(self, name); }, - [MESSAGE.EXT_INFO]: (self, payload) => { - /* - byte SSH_MSG_EXT_INFO - uint32 nr-extensions - repeat the following 2 fields "nr-extensions" times: - string extension-name - string extension-value (binary) - */ - bufferParser.init(payload, 1); - const numExts = bufferParser.readUInt32BE(); - let exts; - if (numExts !== undefined) { - exts = []; - for (let i = 0; i < numExts; ++i) { - const name = bufferParser.readString(true); - const data = bufferParser.readString(); - if (data !== undefined) { - switch (name) { - case 'server-sig-algs': { - const algs = data.latin1Slice(0, data.length).split(','); - exts.push({ name, algs }); - continue; - } - default: - continue; - } - } - // Malformed - exts = undefined; - break; - } - } - bufferParser.clear(); - - if (exts === undefined) - return doFatalError(self, 'Inbound: Malformed EXT_INFO packet'); - - self._debug && self._debug('Inbound: Received EXT_INFO'); - - const handler = self._handlers.EXT_INFO; - handler && handler(self, exts); - }, // User auth protocol -- generic ============================================= [MESSAGE.USERAUTH_REQUEST]: (self, payload) => { @@ -237,21 +195,7 @@ module.exports = { const hasSig = bufferParser.readBool(); if (hasSig !== undefined) { const keyAlgo = bufferParser.readString(true); - let realKeyAlgo = keyAlgo; const key = bufferParser.readString(); - - let hashAlgo; - switch (keyAlgo) { - case 'rsa-sha2-256': - realKeyAlgo = 'ssh-rsa'; - hashAlgo = 'sha256'; - break; - case 'rsa-sha2-512': - realKeyAlgo = 'ssh-rsa'; - hashAlgo = 'sha512'; - break; - } - if (hasSig) { const blobEnd = bufferParser.pos(); let signature = bufferParser.readString(); @@ -262,7 +206,7 @@ module.exports = { signature = bufferSlice(signature, 4 + keyAlgo.length + 4); } - signature = sigSSHToASN1(signature, realKeyAlgo); + signature = sigSSHToASN1(signature, keyAlgo); if (signature) { const sessionID = self._kex.sessionID; const blob = Buffer.allocUnsafe(4 + sessionID.length + blobEnd); @@ -273,16 +217,15 @@ module.exports = { 4 + sessionID.length ); methodData = { - keyAlgo: realKeyAlgo, + keyAlgo, key, signature, blob, - hashAlgo, }; } } } else { - methodData = { keyAlgo: realKeyAlgo, key, hashAlgo }; + methodData = { keyAlgo, key }; methodDesc = 'publickey -- check'; } } @@ -298,23 +241,10 @@ module.exports = { string signature */ const keyAlgo = bufferParser.readString(true); - let realKeyAlgo = keyAlgo; const key = bufferParser.readString(); const localHostname = bufferParser.readString(true); const localUsername = bufferParser.readString(true); - let hashAlgo; - switch (keyAlgo) { - case 'rsa-sha2-256': - realKeyAlgo = 'ssh-rsa'; - hashAlgo = 'sha256'; - break; - case 'rsa-sha2-512': - realKeyAlgo = 'ssh-rsa'; - hashAlgo = 'sha512'; - break; - } - const blobEnd = bufferParser.pos(); let signature = bufferParser.readString(); if (signature !== undefined) { @@ -324,7 +254,7 @@ module.exports = { signature = bufferSlice(signature, 4 + keyAlgo.length + 4); } - signature = sigSSHToASN1(signature, realKeyAlgo); + signature = sigSSHToASN1(signature, keyAlgo); if (signature !== undefined) { const sessionID = self._kex.sessionID; const blob = Buffer.allocUnsafe(4 + sessionID.length + blobEnd); @@ -335,13 +265,12 @@ module.exports = { 4 + sessionID.length ); methodData = { - keyAlgo: realKeyAlgo, + keyAlgo, key, signature, blob, localHostname, localUsername, - hashAlgo }; } } diff --git a/sonorancad/node_modules/ssh2/lib/protocol/kex.js b/sonorancad/node_modules/ssh2/lib/protocol/kex.js index 811e631..49b28f5 100644 --- a/sonorancad/node_modules/ssh2/lib/protocol/kex.js +++ b/sonorancad/node_modules/ssh2/lib/protocol/kex.js @@ -222,39 +222,12 @@ function handleKexInit(self, payload) { // Key exchange method ======================================================= debug && debug(`Handshake: (local) KEX method: ${localKex}`); debug && debug(`Handshake: (remote) KEX method: ${remote.kex}`); - let remoteExtInfoEnabled; if (self._server) { serverList = localKex; clientList = remote.kex; - remoteExtInfoEnabled = (clientList.indexOf('ext-info-c') !== -1); } else { serverList = remote.kex; clientList = localKex; - remoteExtInfoEnabled = (serverList.indexOf('ext-info-s') !== -1); - } - if (self._strictMode === undefined) { - if (self._server) { - self._strictMode = - (clientList.indexOf('kex-strict-c-v00@openssh.com') !== -1); - } else { - self._strictMode = - (serverList.indexOf('kex-strict-s-v00@openssh.com') !== -1); - } - // Note: We check for seqno of 1 instead of 0 since we increment before - // calling the packet handler - if (self._strictMode) { - debug && debug('Handshake: strict KEX mode enabled'); - if (self._decipher.inSeqno !== 1) { - if (debug) - debug('Handshake: KEXINIT not first packet in strict KEX mode'); - return doFatalError( - self, - 'Handshake failed: KEXINIT not first packet in strict KEX mode', - 'handshake', - DISCONNECT_REASON.KEY_EXCHANGE_FAILED - ); - } - } } // Check for agreeable key exchange algorithm for (i = 0; @@ -262,7 +235,7 @@ function handleKexInit(self, payload) { ++i); if (i === clientList.length) { // No suitable match found! - debug && debug('Handshake: no matching key exchange algorithm'); + debug && debug('Handshake: No matching key exchange algorithm'); return doFatalError( self, 'Handshake failed: no matching key exchange algorithm', @@ -506,7 +479,6 @@ function handleKexInit(self, payload) { } self._kex = createKeyExchange(init, self, payload); - self._kex.remoteExtInfoEnabled = remoteExtInfoEnabled; self._kex.start(); } @@ -538,7 +510,6 @@ const createKeyExchange = (() => { this.sessionID = (protocol._kex ? protocol._kex.sessionID : undefined); this.negotiated = negotiated; - this.remoteExtInfoEnabled = false; this._step = 1; this._public = null; this._dh = null; @@ -556,7 +527,7 @@ const createKeyExchange = (() => { this._dhData = undefined; this._sig = undefined; } - finish(scOnly) { + finish() { if (this._finished) return false; this._finished = true; @@ -807,26 +778,9 @@ const createKeyExchange = (() => { this._protocol._packetRW.write.finalize(packet, true) ); } + trySendNEWKEYS(this); - if (isServer || !scOnly) - trySendNEWKEYS(this); - - let hsCipherConfig; - let hsWrite; - const completeHandshake = (partial) => { - if (hsCipherConfig) { - trySendNEWKEYS(this); - hsCipherConfig.outbound.seqno = this._protocol._cipher.outSeqno; - this._protocol._cipher.free(); - this._protocol._cipher = createCipher(hsCipherConfig); - this._protocol._packetRW.write = hsWrite; - hsCipherConfig = undefined; - hsWrite = undefined; - this._protocol._onHandshakeComplete(negotiated); - - return false; - } - + const completeHandshake = () => { if (!this.sessionID) this.sessionID = exchangeHash; @@ -909,8 +863,9 @@ const createKeyExchange = (() => { macKey: (isServer ? scMacKey : csMacKey), }, }; - this._protocol._decipher.free(); - hsCipherConfig = config; + this._protocol._cipher && this._protocol._cipher.free(); + this._protocol._decipher && this._protocol._decipher.free(); + this._protocol._cipher = createCipher(config); this._protocol._decipher = createDecipher(config); const rw = { @@ -977,8 +932,7 @@ const createKeyExchange = (() => { } this._protocol._packetRW.read.cleanup(); this._protocol._packetRW.write.cleanup(); - this._protocol._packetRW.read = rw.read; - hsWrite = rw.write; + this._protocol._packetRW = rw; // Cleanup/reset various state this._public = null; @@ -991,16 +945,13 @@ const createKeyExchange = (() => { this._dhData = undefined; this._sig = undefined; - if (!partial) - return completeHandshake(); + this._protocol._onHandshakeComplete(negotiated); + return false; }; - - if (isServer || scOnly) - this.finish = completeHandshake; - if (!isServer) - return completeHandshake(scOnly); + return completeHandshake(); + this.finish = completeHandshake; } start() { @@ -1260,11 +1211,13 @@ const createKeyExchange = (() => { 'Inbound: NEWKEYS' ); this._receivedNEWKEYS = true; - if (this._protocol._strictMode) - this._protocol._decipher.inSeqno = 0; ++this._step; + if (this._protocol._server || this._hostVerified) + return this.finish(); - return this.finish(!this._protocol._server && !this._hostVerified); + // Signal to current decipher that we need to change to a new decipher + // for the next packet + return false; default: return doFatalError( this._protocol, @@ -1425,7 +1378,7 @@ const createKeyExchange = (() => { parse(payload) { const type = payload[0]; switch (this._step) { - case 1: { + case 1: if (this._protocol._server) { if (type !== MESSAGE.KEXDH_GEX_REQUEST) { return doFatalError( @@ -1500,7 +1453,6 @@ const createKeyExchange = (() => { ++this._step; break; - } case 2: if (this._protocol._server) { if (type !== MESSAGE.KEXDH_GEX_INIT) { @@ -1782,20 +1734,11 @@ function onKEXPayload(state, payload) { payload = this._packetRW.read.read(payload); const type = payload[0]; - - if (!this._strictMode) { - switch (type) { - case MESSAGE.IGNORE: - case MESSAGE.UNIMPLEMENTED: - case MESSAGE.DEBUG: - if (!MESSAGE_HANDLERS) - MESSAGE_HANDLERS = require('./handlers.js'); - return MESSAGE_HANDLERS[type](this, payload); - } - } - switch (type) { case MESSAGE.DISCONNECT: + case MESSAGE.IGNORE: + case MESSAGE.UNIMPLEMENTED: + case MESSAGE.DEBUG: if (!MESSAGE_HANDLERS) MESSAGE_HANDLERS = require('./handlers.js'); return MESSAGE_HANDLERS[type](this, payload); @@ -1811,8 +1754,6 @@ function onKEXPayload(state, payload) { state.firstPacket = false; return handleKexInit(this, payload); default: - // Ensure packet is either an algorithm negotiation or KEX - // algorithm-specific packet if (type < 20 || type > 49) { return doFatalError( this, @@ -1861,8 +1802,6 @@ function trySendNEWKEYS(kex) { kex._protocol._packetRW.write.finalize(packet, true) ); kex._sentNEWKEYS = true; - if (kex._protocol._strictMode) - kex._protocol._cipher.outSeqno = 0; } } @@ -1870,24 +1809,8 @@ module.exports = { KexInit, kexinit, onKEXPayload, - DEFAULT_KEXINIT_CLIENT: new KexInit({ - kex: DEFAULT_KEX.concat(['ext-info-c', 'kex-strict-c-v00@openssh.com']), - serverHostKey: DEFAULT_SERVER_HOST_KEY, - cs: { - cipher: DEFAULT_CIPHER, - mac: DEFAULT_MAC, - compress: DEFAULT_COMPRESSION, - lang: [], - }, - sc: { - cipher: DEFAULT_CIPHER, - mac: DEFAULT_MAC, - compress: DEFAULT_COMPRESSION, - lang: [], - }, - }), - DEFAULT_KEXINIT_SERVER: new KexInit({ - kex: DEFAULT_KEX.concat(['kex-strict-s-v00@openssh.com']), + DEFAULT_KEXINIT: new KexInit({ + kex: DEFAULT_KEX, serverHostKey: DEFAULT_SERVER_HOST_KEY, cs: { cipher: DEFAULT_CIPHER, diff --git a/sonorancad/node_modules/ssh2/lib/protocol/keyParser.js b/sonorancad/node_modules/ssh2/lib/protocol/keyParser.js index a276c1a..9860e3f 100644 --- a/sonorancad/node_modules/ssh2/lib/protocol/keyParser.js +++ b/sonorancad/node_modules/ssh2/lib/protocol/keyParser.js @@ -446,7 +446,7 @@ const BaseKey = { this.type === parsed.type && this[SYM_PRIV_PEM] === parsed[SYM_PRIV_PEM] && this[SYM_PUB_PEM] === parsed[SYM_PUB_PEM] - && this[SYM_PUB_SSH].equals(parsed[SYM_PUB_SSH]) + && this[SYM_PUB_SSH] === parsed[SYM_PUB_SSH] ); }, }; @@ -512,7 +512,7 @@ OpenSSH_Private.prototype = BaseKey; switch (kdfName) { case 'none': return new Error('Malformed OpenSSH private key'); - case 'bcrypt': { + case 'bcrypt': /* string salt uint32 rounds @@ -534,7 +534,6 @@ OpenSSH_Private.prototype = BaseKey; cipherKey = bufferSlice(gen, 0, encInfo.keyLen); cipherIV = bufferSlice(gen, encInfo.keyLen, gen.length); break; - } } } else if (kdfName !== 'none') { return new Error('Malformed OpenSSH private key'); @@ -574,7 +573,6 @@ OpenSSH_Private.prototype = BaseKey; cipherKey, cipherIV, options); - decipher.setAutoPadding(false); if (encInfo.authLen > 0) { if (data.length - data._pos < encInfo.authLen) return new Error('Malformed OpenSSH private key'); @@ -597,8 +595,6 @@ OpenSSH_Private.prototype = BaseKey; } else { ret = []; } - if (ret instanceof Error) - return ret; // This will need to change if/when OpenSSH ever starts storing multiple // keys in their key files return ret[0]; @@ -934,7 +930,7 @@ OpenSSH_Old_Private.prototype = BaseKey; } algo = 'sha1'; break; - case 'EC': { + case 'EC': let ecSSLName; let ecPriv; let ecOID; @@ -983,7 +979,6 @@ OpenSSH_Old_Private.prototype = BaseKey; pubPEM = genOpenSSLECDSAPub(ecOID, pubBlob); pubSSH = genOpenSSHECDSAPub(ecOID, pubBlob); break; - } } return new OpenSSH_Old_Private(type, '', privPEM, pubPEM, pubSSH, algo, @@ -1059,7 +1054,9 @@ PPK_Private.prototype = BaseKey; if (cipherKey.length > encInfo.keyLen) cipherKey = bufferSlice(cipherKey, 0, encInfo.keyLen); try { - const decipher = createDecipheriv(encInfo.sslName, cipherKey, PPK_IV); + const decipher = createDecipheriv(encInfo.sslName, + cipherKey, + PPK_IV); decipher.setAutoPadding(false); privBlob = combineBuffers(decipher.update(privBlob), decipher.final()); diff --git a/sonorancad/node_modules/ssh2/lib/protocol/utils.js b/sonorancad/node_modules/ssh2/lib/protocol/utils.js index 26f4cab..0dab875 100644 --- a/sonorancad/node_modules/ssh2/lib/protocol/utils.js +++ b/sonorancad/node_modules/ssh2/lib/protocol/utils.js @@ -171,7 +171,7 @@ module.exports = { doFatalError: (protocol, msg, level, reason) => { let err; if (DISCONNECT_REASON === undefined) - ({ DISCONNECT_REASON } = require('./constants.js')); + ({ DISCONNECT_REASON } = require('./utils.js')); if (msg instanceof Error) { // doFatalError(protocol, err[, reason]) err = msg; diff --git a/sonorancad/node_modules/ssh2/lib/server.js b/sonorancad/node_modules/ssh2/lib/server.js index 306d658..4f6fd1f 100644 --- a/sonorancad/node_modules/ssh2/lib/server.js +++ b/sonorancad/node_modules/ssh2/lib/server.js @@ -136,7 +136,6 @@ class PKAuthContext extends AuthContext { super(protocol, username, service, method, cb); this.key = { algo: pkInfo.keyAlgo, data: pkInfo.key }; - this.hashAlgo = pkInfo.hashAlgo; this.signature = pkInfo.signature; this.blob = pkInfo.blob; } @@ -156,7 +155,6 @@ class HostbasedAuthContext extends AuthContext { super(protocol, username, service, method, cb); this.key = { algo: pkInfo.keyAlgo, data: pkInfo.key }; - this.hashAlgo = pkInfo.hashAlgo; this.signature = pkInfo.signature; this.blob = pkInfo.blob; this.localHostname = pkInfo.localHostname; @@ -294,11 +292,7 @@ class Server extends EventEmitter { } const algorithms = { - kex: generateAlgorithmList( - cfgAlgos.kex, - DEFAULT_KEX, - SUPPORTED_KEX - ).concat(['kex-strict-s-v00@openssh.com']), + kex: generateAlgorithmList(cfgAlgos.kex, DEFAULT_KEX, SUPPORTED_KEX), serverHostKey: hostKeyAlgoOrder, cs: { cipher: generateAlgorithmList( @@ -1322,13 +1316,6 @@ class Client extends EventEmitter { this.once('rekey', cb); } } - - setNoDelay(noDelay) { - if (this._sock && typeof this._sock.setNoDelay === 'function') - this._sock.setNoDelay(noDelay); - - return this; - } } diff --git a/sonorancad/node_modules/ssh2/test/test-integration-openssh.js b/sonorancad/node_modules/ssh2/test/test-integration-openssh.js index bdfa13f..2baf682 100644 --- a/sonorancad/node_modules/ssh2/test/test-integration-openssh.js +++ b/sonorancad/node_modules/ssh2/test/test-integration-openssh.js @@ -116,9 +116,8 @@ for (const file of readdirSync(FIXTURES_DIR, { withFileTypes: true })) { assert(false, 'Unexpected number of auth attempts'); } if (ctx.signature) { - const result = - clientKey.key.verify(ctx.blob, ctx.signature, ctx.hashAlgo); - assert(result === true, 'Could not verify publickey signature'); + assert(clientKey.key.verify(ctx.blob, ctx.signature) === true, + 'Could not verify publickey signature'); // We should not expect any further auth attempts after we verify a // signature authAttempt = Infinity; @@ -191,9 +190,8 @@ for (const file of readdirSync(FIXTURES_DIR, { withFileTypes: true })) { assert(false, 'Unexpected number of auth attempts'); } if (ctx.signature) { - const result = - clientKey.key.verify(ctx.blob, ctx.signature, ctx.hashAlgo); - assert(result === true, 'Could not verify publickey signature'); + assert(clientKey.key.verify(ctx.blob, ctx.signature) === true, + 'Could not verify publickey signature'); // We should not expect any further auth attempts after we verify a // signature authAttempt = Infinity; @@ -259,9 +257,8 @@ for (const file of readdirSync(FIXTURES_DIR, { withFileTypes: true })) { assert(false, 'Unexpected number of auth attempts'); } if (ctx.signature) { - const result = - clientKey.key.verify(ctx.blob, ctx.signature, ctx.hashAlgo); - assert(result === true, 'Could not verify publickey signature'); + assert(clientKey.key.verify(ctx.blob, ctx.signature) === true, + 'Could not verify publickey signature'); // We should not expect any further auth attempts after we verify a // signature authAttempt = Infinity; @@ -326,9 +323,8 @@ for (const file of readdirSync(FIXTURES_DIR, { withFileTypes: true })) { assert(false, 'Unexpected number of auth attempts'); } if (ctx.signature) { - const result = - clientKey.key.verify(ctx.blob, ctx.signature, ctx.hashAlgo); - assert(result === true, 'Could not verify publickey signature'); + assert(clientKey.key.verify(ctx.blob, ctx.signature) === true, + 'Could not verify publickey signature'); // We should not expect any further auth attempts after we verify a // signature authAttempt = Infinity; @@ -440,7 +436,6 @@ function setup(title, configs) { // default, so we explicitly enable it here args.push('-o', 'HostKeyAlgorithms=+ssh-dss'); args.push('-o', 'PubkeyAcceptedKeyTypes=+ssh-dss'); - args.push('-o', 'PubkeyAcceptedAlgorithms=+ssh-dss'); } args.push('-p', server.address().port.toString(), diff --git a/sonorancad/node_modules/ssh2/test/test-misc-client-server.js b/sonorancad/node_modules/ssh2/test/test-misc-client-server.js index 2dd5a29..fb4b8a5 100644 --- a/sonorancad/node_modules/ssh2/test/test-misc-client-server.js +++ b/sonorancad/node_modules/ssh2/test/test-misc-client-server.js @@ -538,19 +538,10 @@ const setup = setupSimple.bind(undefined, debug); { const BANNER = 'Hello world!'; - let authCb; const { client, server } = setup_( 'Server banner', { - client: { - ...clientCfg, - // This test uses a custom auth handler to avoid a race condition where - // we don't get the complete banner packet before the default auth - // handler immediately sends the initial auth method - authHandler: (authsLeft, partialSuccess, cb) => { - authCb = cb; - }, - }, + client: clientCfg, server: { ...serverCfg, banner: BANNER, @@ -575,7 +566,6 @@ const setup = setupSimple.bind(undefined, debug); .on('banner', mustCall((message) => { assert.strictEqual(message, 'Hello world!\r\n'); sawBanner = true; - authCb('password'); })); } @@ -1234,8 +1224,6 @@ const setup = setupSimple.bind(undefined, debug); 'aes256-ctr', 'aes128-gcm@openssh.com', 'aes256-gcm@openssh.com', - 'aes128-gcm', - 'aes256-gcm', ], }, { desc: 'remove/append/prepend (strings)', diff --git a/sonorancad/node_modules/ssh2/test/test-protocol-crypto.js b/sonorancad/node_modules/ssh2/test/test-protocol-crypto.js index 2203104..8cae94c 100644 --- a/sonorancad/node_modules/ssh2/test/test-protocol-crypto.js +++ b/sonorancad/node_modules/ssh2/test/test-protocol-crypto.js @@ -119,30 +119,8 @@ const { forceNative: (pair[1] === 'native'), }, }; - try { - cipher = createCipher(config); - } catch (ex) { - if (ex.code === 'ERR_OSSL_EVP_UNSUPPORTED' - || /unsupported/i.test(ex.message)) { - console.log( - ' ... skipping because cipher is unsupported by OpenSSL' - ); - continue; - } - throw ex; - } - try { - decipher = createDecipher(config); - } catch (ex) { - if (ex.code === 'ERR_OSSL_EVP_UNSUPPORTED' - || /unsupported/i.test(ex.message)) { - console.log( - ' ... skipping because cipher is unsupported by OpenSSL' - ); - continue; - } - throw ex; - } + cipher = createCipher(config); + decipher = createDecipher(config); if (pair[0] === 'binding') assert(/binding/i.test(cipher.constructor.name)); diff --git a/sonorancad/node_modules/ssh2/test/test-protocol-keyparser.js b/sonorancad/node_modules/ssh2/test/test-protocol-keyparser.js index b919bb8..850d405 100644 --- a/sonorancad/node_modules/ssh2/test/test-protocol-keyparser.js +++ b/sonorancad/node_modules/ssh2/test/test-protocol-keyparser.js @@ -82,27 +82,11 @@ readdirSync(BASE_PATH).forEach((name) => { + `Received: ${inspect(details)}`) ); }); - - // Test `equals()` - let copy; - if (isEncrypted) - copy = parseKey(key, (isPPK ? 'node.js' : 'password')); - else - copy = parseKey(key); - if (!Array.isArray(copy)) - copy = [copy]; - for (let i = 0; i < res.length; ++i) { - assert.strictEqual( - res[i].equals(copy[i]), - true, - failMsg(name, 'equals() failed with copy') - ); - } } if (isEncrypted && !isPublic) { - // Make sure parsing encrypted keys without a passphrase results in an - // appropriate error + // Make sure parsing encrypted keys without a passhprase or incorrect + // passphrase results in an appropriate error const err = parseKey(key); if (!(err instanceof Error)) failMsg(name, 'Expected error during parse without passphrase', true); @@ -111,22 +95,6 @@ readdirSync(BASE_PATH).forEach((name) => { `Error during parse without passphrase: ${err.message}`, true); } - - // Make sure parsing encrypted keys with an incorrect passphrase results in - // an appropriate error - const errIncPass = parseKey(key, 'incorrectPassphrase'); - if (!(errIncPass instanceof Error)) { - failMsg(name, - 'Expected error during parse with an incorrect passphrase', - true); - } - if (!/bad passphrase\?|unable to authenticate data/i - .test(errIncPass.message)) { - failMsg(name, - 'Error during parse with an incorrect passphrase: ' - + errIncPass.message, - true); - } } if (!isPublic) { diff --git a/sonorancad/node_modules/ssh2/test/test-server-hostkeys.js b/sonorancad/node_modules/ssh2/test/test-server-hostkeys.js index 34bbcda..3093864 100644 --- a/sonorancad/node_modules/ssh2/test/test-server-hostkeys.js +++ b/sonorancad/node_modules/ssh2/test/test-server-hostkeys.js @@ -64,9 +64,8 @@ const debug = false; break; } if (ctx.signature) { - const result = - clientKey.key.verify(ctx.blob, ctx.signature, ctx.hashAlgo); - assert(result === true, 'Could not verify publickey signature'); + assert(clientKey.key.verify(ctx.blob, ctx.signature) === true, + 'Could not verify publickey signature'); } ctx.accept(); }, 3)).on('ready', mustCall(() => { @@ -122,9 +121,8 @@ const debug = false; break; } if (ctx.signature) { - const result = - clientKey.key.verify(ctx.blob, ctx.signature, ctx.hashAlgo); - assert(result === true, 'Could not verify publickey signature'); + assert(clientKey.key.verify(ctx.blob, ctx.signature) === true, + 'Could not verify publickey signature'); } ctx.accept(); }, 3)).on('ready', mustCall(() => { diff --git a/sonorancad/node_modules/ssh2/test/test-sftp.js b/sonorancad/node_modules/ssh2/test/test-sftp.js index 1bda766..50e56f5 100644 --- a/sonorancad/node_modules/ssh2/test/test-sftp.js +++ b/sonorancad/node_modules/ssh2/test/test-sftp.js @@ -64,30 +64,6 @@ setup('read', mustCall((client, server) => { })); })); -setup('read (partial)', mustCall((client, server) => { - const expected = Buffer.from('blargh'); - const handle_ = Buffer.from('node.js'); - const buf = Buffer.alloc(256); - server.on('READ', mustCall((id, handle, offset, len) => { - assert(id === 0, `Wrong request id: ${id}`); - assert.deepStrictEqual(handle, handle_, 'handle mismatch'); - assert(offset === 0, `Wrong read offset: ${offset}`); - assert(len === buf.length, `Wrong read len: ${len}`); - server.data(id, expected); - server.end(); - })); - client.read(handle_, buf, 0, buf.length, 0, mustCall((err, nb, data) => { - assert(!err, `Unexpected read() error: ${err}`); - assert.strictEqual(nb, expected.length, 'nb count mismatch'); - assert.deepStrictEqual( - buf.slice(0, expected.length), - expected, - 'read data mismatch' - ); - assert.deepStrictEqual(data, expected, 'read data mismatch'); - })); -})); - setup('read (overflow)', mustCall((client, server) => { const maxChunk = client._maxReadLen; const expected = Buffer.alloc(3 * maxChunk, 'Q'); diff --git a/sonorancad/node_modules/ssh2/test/test-userauth-agent-openssh.js b/sonorancad/node_modules/ssh2/test/test-userauth-agent-openssh.js index cd6b224..55d1a25 100644 --- a/sonorancad/node_modules/ssh2/test/test-userauth-agent-openssh.js +++ b/sonorancad/node_modules/ssh2/test/test-userauth-agent-openssh.js @@ -68,9 +68,8 @@ if (process.argv[2] === 'child') { break; } if (ctx.signature) { - const result = - clientKey.key.verify(ctx.blob, ctx.signature, ctx.hashAlgo); - assert(result === true, 'Could not verify publickey signature'); + assert(clientKey.key.verify(ctx.blob, ctx.signature) === true, + 'Could not verify publickey signature'); } ctx.accept(); }, 3)).on('ready', mustCall(() => { diff --git a/sonorancad/node_modules/ssh2/test/test-userauth-agent.js b/sonorancad/node_modules/ssh2/test/test-userauth-agent.js index 73b64c3..a28ad0b 100644 --- a/sonorancad/node_modules/ssh2/test/test-userauth-agent.js +++ b/sonorancad/node_modules/ssh2/test/test-userauth-agent.js @@ -71,9 +71,8 @@ const clientKey = fixtureKey('openssh_new_rsa'); break; } if (ctx.signature) { - const result = - clientKey.key.verify(ctx.blob, ctx.signature, ctx.hashAlgo); - assert(result === true, 'Could not verify publickey signature'); + assert(clientKey.key.verify(ctx.blob, ctx.signature) === true, + 'Could not verify publickey signature'); } ctx.accept(); }, 3)).on('ready', mustCall(() => { diff --git a/sonorancad/node_modules/ssh2/test/test-userauth.js b/sonorancad/node_modules/ssh2/test/test-userauth.js index bbf5d8b..fb2fe9e 100644 --- a/sonorancad/node_modules/ssh2/test/test-userauth.js +++ b/sonorancad/node_modules/ssh2/test/test-userauth.js @@ -65,9 +65,8 @@ const debug = false; break; } if (ctx.signature) { - const result = - clientKey.key.verify(ctx.blob, ctx.signature, ctx.hashAlgo); - assert(result === true, 'Could not verify publickey signature'); + assert(clientKey.key.verify(ctx.blob, ctx.signature) === true, + 'Could not verify publickey signature'); } ctx.accept(); }, 3)).on('ready', mustCall(() => { @@ -221,7 +220,7 @@ const debug = false; assert(ctx.method === 'publickey', `Wrong auth method: ${ctx.method}`); return ctx.reject(); - case 3: { + case 3: assert(ctx.method === 'hostbased', `Wrong auth method: ${ctx.method}`); assert(ctx.key.algo === clientKey.key.type, @@ -232,12 +231,10 @@ const debug = false; assert(ctx.signature, 'Expected signature'); assert(ctx.localHostname === localHostname, 'Wrong local hostname'); assert(ctx.localUsername === localUsername, 'Wrong local username'); - const result = - clientKey.key.verify(ctx.blob, ctx.signature, ctx.hashAlgo); - assert(result === true, 'Could not verify hostbased signature'); + assert(clientKey.key.verify(ctx.blob, ctx.signature) === true, + 'Could not verify hostbased signature'); break; - } } ctx.accept(); }, 3)).on('ready', mustCall(() => { diff --git a/sonorancad/node_modules/ts3-nodejs-library/CHANGELOG.md b/sonorancad/node_modules/ts3-nodejs-library/CHANGELOG.md index 5c61e8f..0fc2166 100644 --- a/sonorancad/node_modules/ts3-nodejs-library/CHANGELOG.md +++ b/sonorancad/node_modules/ts3-nodejs-library/CHANGELOG.md @@ -1,12 +1,5 @@ # Changelog -### 3.5.1 - 19.09.2023 -* fix type of clientTalkRequest - -### 3.5.0 - 06.07.2023 -* fix customSearch and customInfo response entry to be an array -* both above functions will now return an empty array when no entry has been found instead of throwing an error - ### 3.4.0 - 08.10.2021 * **WARNING** changed crc32 return value from `TeamSpeak#uploadIcon` function from a signed int to an unsigned int * added empty string for multiple file transfer functions for property `cpw` diff --git a/sonorancad/node_modules/ts3-nodejs-library/lib/TeamSpeak.d.ts b/sonorancad/node_modules/ts3-nodejs-library/lib/TeamSpeak.d.ts index 8689f3c..8978454 100644 --- a/sonorancad/node_modules/ts3-nodejs-library/lib/TeamSpeak.d.ts +++ b/sonorancad/node_modules/ts3-nodejs-library/lib/TeamSpeak.d.ts @@ -1,5 +1,4 @@ /// -/// import { EventEmitter } from "events"; import { TeamSpeakQuery } from "./transport/TeamSpeakQuery"; import { ResponseError } from "./exception/ResponseError"; @@ -1158,4 +1157,4 @@ export declare namespace TeamSpeak { } } export declare const QueryProtocol: typeof TeamSpeak.QueryProtocol; -export type ConnectionParams = TeamSpeak.ConnectionParams; +export declare type ConnectionParams = TeamSpeak.ConnectionParams; diff --git a/sonorancad/node_modules/ts3-nodejs-library/lib/TeamSpeak.js b/sonorancad/node_modules/ts3-nodejs-library/lib/TeamSpeak.js index e672ca3..f219c8d 100644 --- a/sonorancad/node_modules/ts3-nodejs-library/lib/TeamSpeak.js +++ b/sonorancad/node_modules/ts3-nodejs-library/lib/TeamSpeak.js @@ -1117,29 +1117,15 @@ class TeamSpeak extends events_1.EventEmitter { * @param ident the key to search for * @param pattern the search pattern to use */ - async customSearch(ident, pattern) { - try { - return await this.execute("customsearch", { ident, pattern }); - } - catch (e) { - if (e.id !== "1281") - return []; //empty result set - throw e; - } + customSearch(ident, pattern) { + return this.execute("customsearch", { ident, pattern }).then(TeamSpeak.singleResponse); } /** * returns a list of custom properties for the client specified with cldbid. * @param client the Client Database ID which should be retrieved */ - async customInfo(client) { - try { - return await this.execute("custominfo", { cldbid: Client_1.TeamSpeakClient.getDbid(client) }); - } - catch (e) { - if (e.id === "1281") - return []; //empty result set - throw e; - } + customInfo(client) { + return this.execute("custominfo", { cldbid: Client_1.TeamSpeakClient.getDbid(client) }); } /** * Removes a custom property from a client specified by the cldbid. @@ -2106,6 +2092,6 @@ exports.TeamSpeak = TeamSpeak; QueryProtocol["RAW"] = "raw"; QueryProtocol["SSH"] = "ssh"; })(QueryProtocol = TeamSpeak.QueryProtocol || (TeamSpeak.QueryProtocol = {})); -})(TeamSpeak || (exports.TeamSpeak = TeamSpeak = {})); +})(TeamSpeak = exports.TeamSpeak || (exports.TeamSpeak = {})); exports.QueryProtocol = TeamSpeak.QueryProtocol; //# sourceMappingURL=TeamSpeak.js.map \ No newline at end of file diff --git a/sonorancad/node_modules/ts3-nodejs-library/lib/TeamSpeak.js.map b/sonorancad/node_modules/ts3-nodejs-library/lib/TeamSpeak.js.map index 8e62359..6ba81ad 100644 --- a/sonorancad/node_modules/ts3-nodejs-library/lib/TeamSpeak.js.map +++ b/sonorancad/node_modules/ts3-nodejs-library/lib/TeamSpeak.js.map @@ -1 +1 @@ -{"version":3,"file":"TeamSpeak.js","sourceRoot":"","sources":["../src/TeamSpeak.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"TeamSpeak.js","sourceRoot":"","sources":["../src/TeamSpeak.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/sonorancad/node_modules/ts3-nodejs-library/lib/transport/Command.d.ts b/sonorancad/node_modules/ts3-nodejs-library/lib/transport/Command.d.ts index 6c0785c..14dd59d 100644 --- a/sonorancad/node_modules/ts3-nodejs-library/lib/transport/Command.d.ts +++ b/sonorancad/node_modules/ts3-nodejs-library/lib/transport/Command.d.ts @@ -321,7 +321,7 @@ export declare namespace Command { clientLoginPassword: typeof Command.parseString; clientTotalconnections: typeof Command.parseNumber; clientFlagAvatar: typeof Command.parseString; - clientTalkRequest: typeof Command.parseNumber; + clientTalkRequest: typeof Command.parseBoolean; clientTalkRequestMsg: typeof Command.parseString; clientMonthBytesUploaded: typeof Command.parseNumber; clientMonthBytesDownloaded: typeof Command.parseNumber; diff --git a/sonorancad/node_modules/ts3-nodejs-library/lib/transport/Command.js b/sonorancad/node_modules/ts3-nodejs-library/lib/transport/Command.js index c4b205a..862aa04 100644 --- a/sonorancad/node_modules/ts3-nodejs-library/lib/transport/Command.js +++ b/sonorancad/node_modules/ts3-nodejs-library/lib/transport/Command.js @@ -522,7 +522,7 @@ Command.SNAKE_CASE_IDENTIFIER = "_"; clientLoginPassword: Command.parseString, clientTotalconnections: Command.parseNumber, clientFlagAvatar: Command.parseString, - clientTalkRequest: Command.parseNumber, + clientTalkRequest: Command.parseBoolean, clientTalkRequestMsg: Command.parseString, clientMonthBytesUploaded: Command.parseNumber, clientMonthBytesDownloaded: Command.parseNumber, @@ -705,5 +705,5 @@ Command.SNAKE_CASE_IDENTIFIER = "_"; createdAt: Command.parseNumber, expiresAt: Command.parseNumber }; -})(Command || (exports.Command = Command = {})); +})(Command = exports.Command || (exports.Command = {})); //# sourceMappingURL=Command.js.map \ No newline at end of file diff --git a/sonorancad/node_modules/ts3-nodejs-library/lib/transport/Command.js.map b/sonorancad/node_modules/ts3-nodejs-library/lib/transport/Command.js.map index 4f1c3e6..97b396a 100644 --- a/sonorancad/node_modules/ts3-nodejs-library/lib/transport/Command.js.map +++ b/sonorancad/node_modules/ts3-nodejs-library/lib/transport/Command.js.map @@ -1 +1 @@ -{"version":3,"file":"Command.js","sourceRoot":"","sources":["../../src/transport/Command.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"Command.js","sourceRoot":"","sources":["../../src/transport/Command.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/sonorancad/node_modules/ts3-nodejs-library/lib/transport/TeamSpeakQuery.js.map b/sonorancad/node_modules/ts3-nodejs-library/lib/transport/TeamSpeakQuery.js.map index 747d4b6..e4ebb35 100644 --- a/sonorancad/node_modules/ts3-nodejs-library/lib/transport/TeamSpeakQuery.js.map +++ b/sonorancad/node_modules/ts3-nodejs-library/lib/transport/TeamSpeakQuery.js.map @@ -1 +1 @@ -{"version":3,"file":"TeamSpeakQuery.js","sourceRoot":"","sources":["../../src/transport/TeamSpeakQuery.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"TeamSpeakQuery.js","sourceRoot":"","sources":["../../src/transport/TeamSpeakQuery.ts"],"names":[],"mappings":";;;AAAA,mCAAqC;AACrC,uCAAmC;AACnC,yCAA6C;AAC7C,yCAA6C;AAE7C,4CAAwC;AAExC,MAAa,cAAe,SAAQ,qBAAY;IAoB9C,YAAY,MAAkC;QAC5C,KAAK,EAAE,CAAA;QAjBD,UAAK,GAA+B,EAAE,CAAA;QAEtC,gBAAW,GAAW,cAAc,CAAC,oBAAoB,CAAA;QACzD,cAAS,GAAW,EAAE,CAAA;QACtB,YAAO,GAAW,IAAI,CAAC,GAAG,EAAE,CAAA;QAC5B,cAAS,GAAY,KAAK,CAAA;QAI1B,eAAU,GAAY,IAAI,CAAA;QACzB,iBAAY,GAAa;YAChC,sBAAsB;YACtB,mBAAmB;YACnB,uBAAuB;SACxB,CAAA;QAIC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;IACtB,CAAC;IAED;;OAEG;IACH,OAAO;QACL,IAAI,IAAI,CAAC,MAAM,EAAE;YACf,IAAI,IAAI,CAAC,SAAS,EAAE;gBAClB,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAA;aACrC;iBAAM;gBACL;;;mBAGG;gBACH,IAAI,IAAI,CAAC,MAAM,EAAE;oBACf,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;oBAC/B,IAAI,CAAC,MAAM,GAAG,SAAS,CAAA;iBACxB;gBACD,IAAI,CAAC,MAAM,CAAC,kBAAkB,EAAE,CAAA;gBAChC,IAAI,CAAC,WAAW,GAAG,cAAc,CAAC,oBAAoB,CAAA;aACvD;SACF;QACD,IAAI,CAAC,MAAM,GAAG,cAAc,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QACnD,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAA;QACzD,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,SAAS,EAAE,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;QACxD,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;QAClD,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;IACtD,CAAC;IAED,mCAAmC;IACnC,MAAM,CAAC,SAAS,CAAC,MAAkC;QACjD,IAAI,MAAM,CAAC,QAAQ,KAAK,qBAAS,CAAC,aAAa,CAAC,GAAG,EAAE;YACnD,OAAO,IAAI,iBAAW,CAAC,MAAM,CAAC,CAAA;SAC/B;aAAM,IAAI,MAAM,CAAC,QAAQ,KAAK,qBAAS,CAAC,aAAa,CAAC,GAAG,EAAE;YAC1D,OAAO,IAAI,iBAAW,CAAC,MAAM,CAAC,CAAA;SAC/B;aAAM;YACL,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAA;SACzE;IACH,CAAC;IAED,8CAA8C;IAC9C,OAAO,CAAC,OAAe,EAAE,GAAG,IAAkC;QAC5D,OAAO,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,IAAI,CAAC,CAAA;IAC1C,CAAC;IAED,wDAAwD;IACxD,WAAW,CAAC,OAAe,EAAE,GAAG,IAAkC;QAChE,OAAO,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;IAChD,CAAC;IAED;;;;OAIG;IACK,aAAa,CAAC,OAAe,EAAE,IAAkC,EAAE,WAAoB,KAAK;QAClG,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrC,MAAM,GAAG,GAAG,IAAI,iBAAO,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAA;YAC7C,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;gBAC9B,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;oBACpB,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,CAAC,EAAE;wBAChE,OAAO,GAAG,CAAC,eAAe,CAAqB,CAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,CAAA;qBAC3E;yBAAM;wBACL,OAAO,GAAG,CAAC,QAAQ,CAAgB,CAAC,CAAC,CAAA;qBACtC;iBACF;qBAAM,IAAI,OAAO,CAAC,KAAK,UAAU,EAAE;oBAClC,OAAO,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAA;iBACxB;qBAAM;oBACL,OAAO,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAA;iBACzB;YACH,CAAC,CAAC,CAAA;YACF,IAAI,CAAC,WAAW,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAA;QACtD,CAAC,CAAC,CAAA;IACJ,CAAC;IAED,8CAA8C;IAC9C,SAAS;QACP,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;QAChB,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAA;IAC5B,CAAC;IAED,KAAK,CAAC,KAAc;QAClB,IAAI,CAAC,UAAU,GAAG,KAAK,CAAA;QACvB,IAAI,CAAC,IAAI,CAAC,UAAU;YAAE,IAAI,CAAC,WAAW,EAAE,CAAA;QACxC,OAAO,IAAI,CAAA;IACb,CAAC;IAED,2EAA2E;IACnE,aAAa;QACnB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAA;QACrB,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;QACpD,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;IACtB,CAAC;IAED,+DAA+D;IACvD,UAAU,CAAC,IAAY;QAC7B,IAAI,GAAG,IAAI,CAAC,IAAI,EAAE,CAAA;QAClB,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAA;QACnD,IAAI,IAAI,CAAC,WAAW,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE;YACrD,IAAI,CAAC,WAAW,IAAI,CAAC,CAAA;YACrB,IAAI,IAAI,CAAC,WAAW,GAAG,CAAC;gBAAE,OAAM;YAChC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;YAClB,IAAI,CAAC,WAAW,EAAE,CAAA;SACnB;aAAM,IAAI,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE;YACnC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAA;SAC5B;aAAM,IAAI,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE;YACpC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAA;SAC5B;aAAM,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE;YACzC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,CAAA;SAClC;IACH,CAAC;IAED,uDAAuD;IAC/C,gBAAgB,CAAC,IAAY;QACnC,IAAI,CAAC,IAAI,CAAC,MAAM;YAAE,OAAM;QACxB,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;QAC9B,IAAI,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE;YAC9B,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAG,CAAA;YACzC,IAAI,KAAK,CAAC,EAAE,KAAK,KAAK,EAAE;gBACtB,OAAO,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;aAC7C;iBAAM;gBACL,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAA;aAC/C;SACF;aAAM;YACL,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,CAAA;SACnD;QACD,IAAI,CAAC,MAAM,GAAG,SAAS,CAAA;QACvB,IAAI,CAAC,WAAW,EAAE,CAAA;IACpB,CAAC;IAED,2DAA2D;IACnD,mBAAmB,CAAC,MAAgC;QAC1D,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAA;QAC5C,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAG,CAAC,OAAO,CAAC,KAAK,CAAC,eAAe,CAAC,CAAA;QACnE,MAAM,WAAW,GAAG,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;QACtD,YAAY,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;QAC/B,IAAI,CAAC,YAAY,GAAG,UAAU,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,GAAG,EAAE;YAC3C,GAAG,CAAC,KAAK,EAAE,CAAA;YACX,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,CAAA;QACxB,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,WAAW,GAAG,IAAI,GAAG,GAAG,CAAC,CAAA;QAC1C,OAAM;IACR,CAAC;IAED;;;OAGG;IACK,gBAAgB,CAAC,IAAY;QACnC,IAAI,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,KAAK,IAAI,CAAC,SAAS;YAAE,OAAM;QACpF;;;;;;WAMG;QACH,IAAI,CAAC,IAAI,CACP,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,EACrC,iBAAO,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAC9D,CAAA;IACH,CAAC;IAED;;;OAGG;IACK,WAAW,CAAC,KAAY;QAC9B;;;;;WAKG;QACH,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,CAAA;IAC3B,CAAC;IAED,6BAA6B;IACrB,WAAW;QACjB,IAAI,CAAC,SAAS,GAAG,KAAK,CAAA;QACtB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;QAChB,YAAY,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;QAC/B,YAAY,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAA;QACnC,MAAM,GAAG,GAAG,IAAI,iBAAO,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC,CAAA;QAC3D,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAA;IACpC,CAAC;IAED,kDAAkD;IAC1C,SAAS;QACf,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS;YAAE,OAAM;QAClC,YAAY,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAA;QACnC,IAAI,CAAC,gBAAgB,GAAG,UAAU,CAChC,GAAG,EAAE,CAAC,IAAI,CAAC,aAAa,EAAE,EAC1B,IAAI,CAAC,MAAM,CAAC,gBAAgB,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,CAClE,CAAA;IACH,CAAC;IAED,+BAA+B;IACvB,aAAa;QACnB,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,CAAA;QACzC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;QACzB,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,CAAA;QAC3B,IAAI,CAAC,SAAS,EAAE,CAAA;IAClB,CAAC;IAED,gCAAgC;IACxB,WAAW,CAAC,GAA8B;QAChD,IAAI,GAAG;YAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QAC7B,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,UAAU;YAAE,OAAM;QAC7D,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAA;QACrC,IAAI,CAAC,IAAI,CAAC,MAAM;YAAE,OAAM;QACxB,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,CAAA;IACpC,CAAC;IAED;;;OAGG;IACK,gBAAgB;QACtB,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAA;QAC7C,IAAI,IAAI,EAAE;YACR,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,CAAA;YAC/C,OAAO,IAAI,CAAA;SACZ;QACD,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAA;IAC3B,CAAC;IAED,+BAA+B;IACvB,IAAI,CAAC,IAAY;QACvB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;QACzB,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAA;QAC1C,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QACtB,IAAI,CAAC,SAAS,EAAE,CAAA;IAClB,CAAC;IAED,WAAW;QACT,OAAO,IAAI,CAAC,SAAS,CAAA;IACvB,CAAC;;AAnQH,wCAoQC;AAlQQ,mCAAoB,GAAG,CAAC,CAAA"} \ No newline at end of file diff --git a/sonorancad/node_modules/ts3-nodejs-library/lib/transport/protocols/raw.d.ts b/sonorancad/node_modules/ts3-nodejs-library/lib/transport/protocols/raw.d.ts index ed1c3c7..9abe6a0 100644 --- a/sonorancad/node_modules/ts3-nodejs-library/lib/transport/protocols/raw.d.ts +++ b/sonorancad/node_modules/ts3-nodejs-library/lib/transport/protocols/raw.d.ts @@ -1,6 +1,4 @@ /// -/// -import { Socket } from "net"; import { EventEmitter } from "events"; import { TeamSpeak } from "../../TeamSpeak"; import { TeamSpeakQuery } from "../TeamSpeakQuery"; @@ -31,5 +29,5 @@ export declare class ProtocolRAW extends EventEmitter implements TeamSpeakQuery. private handleData; send(str: string): void; sendKeepAlive(): void; - close(): Socket; + close(): void; } diff --git a/sonorancad/node_modules/ts3-nodejs-library/lib/transport/protocols/ssh.d.ts b/sonorancad/node_modules/ts3-nodejs-library/lib/transport/protocols/ssh.d.ts index 82cee26..d31f655 100644 --- a/sonorancad/node_modules/ts3-nodejs-library/lib/transport/protocols/ssh.d.ts +++ b/sonorancad/node_modules/ts3-nodejs-library/lib/transport/protocols/ssh.d.ts @@ -1,5 +1,4 @@ /// -import { Client } from "ssh2"; import { EventEmitter } from "events"; import { TeamSpeak } from "../../TeamSpeak"; import { TeamSpeakQuery } from "../TeamSpeakQuery"; @@ -26,5 +25,5 @@ export declare class ProtocolSSH extends EventEmitter implements TeamSpeakQuery. private handleData; send(str: string): void; sendKeepAlive(): void; - close(): Client; + close(): void; } diff --git a/sonorancad/node_modules/ts3-nodejs-library/lib/transport/protocols/ssh.js b/sonorancad/node_modules/ts3-nodejs-library/lib/transport/protocols/ssh.js index 4b87586..1de33a3 100644 --- a/sonorancad/node_modules/ts3-nodejs-library/lib/transport/protocols/ssh.js +++ b/sonorancad/node_modules/ts3-nodejs-library/lib/transport/protocols/ssh.js @@ -22,7 +22,15 @@ class ProtocolSSH extends events_1.EventEmitter { password: config.password, readyTimeout: config.readyTimeout, algorithms: { - serverHostKey: ["rsa-sha2-512"] + serverHostKey: [ + "ssh-rsa", + "ssh-ed25519", + "ecdsa-sha2-nistp256", + "ecdsa-sha2-nistp384", + "ecdsa-sha2-nistp521", + "rsa-sha2-512", + "rsa-sha2-256" + ] }, //@ts-ignore not implemented by @types repo localAddress: config.localAddress diff --git a/sonorancad/node_modules/ts3-nodejs-library/lib/transport/protocols/ssh.js.map b/sonorancad/node_modules/ts3-nodejs-library/lib/transport/protocols/ssh.js.map index 73bd314..e6f4593 100644 --- a/sonorancad/node_modules/ts3-nodejs-library/lib/transport/protocols/ssh.js.map +++ b/sonorancad/node_modules/ts3-nodejs-library/lib/transport/protocols/ssh.js.map @@ -1 +1 @@ -{"version":3,"file":"ssh.js","sourceRoot":"","sources":["../../../src/transport/protocols/ssh.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"ssh.js","sourceRoot":"","sources":["../../../src/transport/protocols/ssh.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/sonorancad/node_modules/ts3-nodejs-library/lib/types/Events.d.ts b/sonorancad/node_modules/ts3-nodejs-library/lib/types/Events.d.ts index 7a7b132..2f2c934 100644 --- a/sonorancad/node_modules/ts3-nodejs-library/lib/types/Events.d.ts +++ b/sonorancad/node_modules/ts3-nodejs-library/lib/types/Events.d.ts @@ -1,5 +1,6 @@ import { TeamSpeakClient } from "../node/Client"; import { TeamSpeakChannel } from "../node/Channel"; +import { ClientList } from "./ResponseTypes"; import { TextMessageTargetMode } from "./enum"; export interface Debug { type: string; @@ -16,14 +17,10 @@ export interface ClientDisconnect { reasonid: string; reasonmsg: string; clid: string; - invokerid?: string; - invokername?: string; - invokeruid?: string; - bantime?: number; }; } export interface TokenUsed { - client: TeamSpeakClient; + client: ClientList; token: string; token1: string; token2: string; diff --git a/sonorancad/node_modules/ts3-nodejs-library/lib/types/ResponseTypes.d.ts b/sonorancad/node_modules/ts3-nodejs-library/lib/types/ResponseTypes.d.ts index ad40dca..c3b3534 100644 --- a/sonorancad/node_modules/ts3-nodejs-library/lib/types/ResponseTypes.d.ts +++ b/sonorancad/node_modules/ts3-nodejs-library/lib/types/ResponseTypes.d.ts @@ -16,7 +16,7 @@ export interface ApiKeyAdd extends TeamSpeakQuery.ResponseEntry { scope: ApiKeyScope; timeLeft: number; } -export type ApiKeyList = ApiKeyEntry[]; +export declare type ApiKeyList = ApiKeyEntry[]; export interface ApiKeyEntry extends TeamSpeakQuery.ResponseEntry { count: number; id: string; @@ -33,7 +33,7 @@ export interface QueryErrorMessage extends TeamSpeakQuery.ResponseEntry { extraMsg?: string; failedPermid?: number; } -export type ClientList = ClientEntry[]; +export declare type ClientList = ClientEntry[]; export interface ClientEntry extends TeamSpeakQuery.ResponseEntry { clid: string; cid: string; @@ -66,7 +66,7 @@ export interface ClientEntry extends TeamSpeakQuery.ResponseEntry { connectionClientIp: string; clientBadges: string; } -export type ChannelList = ChannelEntry[]; +export declare type ChannelList = ChannelEntry[]; export interface ChannelEntry extends TeamSpeakQuery.ResponseEntry { cid: string; pid: string; @@ -92,7 +92,7 @@ export interface ChannelEntry extends TeamSpeakQuery.ResponseEntry { /** only in server version >= 3.11.x */ channelBannerMode: number; } -export type ServerGroupList = ServerGroupEntry[]; +export declare type ServerGroupList = ServerGroupEntry[]; export interface ServerGroupEntry extends TeamSpeakQuery.ResponseEntry { sgid: string; name: string; @@ -110,7 +110,7 @@ export interface ServerGroupsByClientId extends TeamSpeakQuery.ResponseEntry { sgid: string; cldbid: string; } -export type ChannelClientPermIdList = ChannelClientPermIdEntry[]; +export declare type ChannelClientPermIdList = ChannelClientPermIdEntry[]; export interface ChannelClientPermIdEntry extends TeamSpeakQuery.ResponseEntry { cid: string; cldbid: string; @@ -119,7 +119,7 @@ export interface ChannelClientPermIdEntry extends TeamSpeakQuery.ResponseEntry { permnegated: boolean; permskip: boolean; } -export type ChannelClientPermSidList = ChannelClientPermSidEntry[]; +export declare type ChannelClientPermSidList = ChannelClientPermSidEntry[]; export interface ChannelClientPermSidEntry extends TeamSpeakQuery.ResponseEntry { cid: string; cldbid: string; @@ -128,7 +128,7 @@ export interface ChannelClientPermSidEntry extends TeamSpeakQuery.ResponseEntry permnegated: boolean; permskip: boolean; } -export type ChannelGroupList = ChannelGroupEntry[]; +export declare type ChannelGroupList = ChannelGroupEntry[]; export interface ChannelGroupEntry extends TeamSpeakQuery.ResponseEntry { cgid: string; name: string; @@ -141,7 +141,7 @@ export interface ChannelGroupEntry extends TeamSpeakQuery.ResponseEntry { nMemberAddp: number; nMemberRemovep: number; } -export type ServerList = ServerEntry[]; +export declare type ServerList = ServerEntry[]; export interface ServerEntry extends TeamSpeakQuery.ResponseEntry { virtualserverId: string; virtualserverPort: number; @@ -165,7 +165,7 @@ export interface QueryLoginAdd extends TeamSpeakQuery.ResponseEntry { clientLoginName: string; clientLoginPassword: string; } -export type QueryLoginList = QueryLoginEntry[]; +export declare type QueryLoginList = QueryLoginEntry[]; export interface QueryLoginEntry extends TeamSpeakQuery.ResponseEntry { cldbid: string; sid: string; @@ -212,7 +212,7 @@ export interface InstanceInfo extends TeamSpeakQuery.ResponseEntry { serverinstancePendingConnectionsPerIp: number; serverinstanceServerqueryMaxConnectionsPerIp: number; } -export type BindingList = BindingEntry[]; +export declare type BindingList = BindingEntry[]; export interface BindingEntry extends TeamSpeakQuery.ResponseEntry { ip: string; } @@ -333,7 +333,7 @@ export interface ServerRequestConnectionInfo extends TeamSpeakQuery.ResponseEntr connectionPacketlossTotal: number; connectionPing: number; } -export type ServerGroupClientList = ServerGroupClientEntry[]; +export declare type ServerGroupClientList = ServerGroupClientEntry[]; export interface ServerGroupClientEntry extends TeamSpeakQuery.ResponseEntry { cldbid: string; clientNickname: string; @@ -347,7 +347,7 @@ export interface ChannelGroupCopy extends TeamSpeakQuery.ResponseEntry { /** only available when a new group gets created */ cgid?: string; } -export type ServerTempPasswordList = ServerTempPasswordEntry[]; +export declare type ServerTempPasswordList = ServerTempPasswordEntry[]; export interface ServerTempPasswordEntry extends TeamSpeakQuery.ResponseEntry { nickname: string; uid: string; @@ -357,13 +357,13 @@ export interface ServerTempPasswordEntry extends TeamSpeakQuery.ResponseEntry { end: number; tcid: string; } -export type ChannelGroupClientList = ChannelGroupClientEntry[]; +export declare type ChannelGroupClientList = ChannelGroupClientEntry[]; export interface ChannelGroupClientEntry extends TeamSpeakQuery.ResponseEntry { cid?: string; cldbid?: string; cgid?: string; } -export type PermList = PermEntry[]; +export declare type PermList = PermEntry[]; export interface PermEntry extends TeamSpeakQuery.ResponseEntry { permid?: number; permsid?: string; @@ -406,7 +406,7 @@ export interface ChannelInfo extends TeamSpeakQuery.ResponseEntry { channelBannerMode: number; secondsEmpty: number; } -export type ClientGetIds = ClientGetIdEntry[]; +export declare type ClientGetIds = ClientGetIdEntry[]; export interface ClientGetIdEntry extends TeamSpeakQuery.ResponseEntry { cluid: string; clid: string; @@ -460,7 +460,7 @@ export interface ClientInfo extends TeamSpeakQuery.ResponseEntry { clientType: ClientType; clientFlagAvatar: string; clientTalkPower: number; - clientTalkRequest: number; + clientTalkRequest: boolean; clientTalkRequestMsg: string; clientDescription: string; clientIsTalker: boolean; @@ -495,7 +495,7 @@ export interface ClientInfo extends TeamSpeakQuery.ResponseEntry { connectionConnectedTime: number; connectionClientIp: string; } -export type ClientDBList = ClientDBEntry[]; +export declare type ClientDBList = ClientDBEntry[]; export interface ClientDBEntry extends TeamSpeakQuery.ResponseEntry { count: number; cldbid: string; @@ -524,14 +524,12 @@ export interface ClientDBInfo extends TeamSpeakQuery.ResponseEntry { clientBase64HashClientUID: string; clientLastip: string; } -export type CustomSearch = CustomSearchEntry[]; -export interface CustomSearchEntry extends TeamSpeakQuery.ResponseEntry { +export interface CustomSearch extends TeamSpeakQuery.ResponseEntry { cldbid: string; ident: string; value: string; } -export type CustomInfo = CustomInfoEntry[]; -export interface CustomInfoEntry extends TeamSpeakQuery.ResponseEntry { +export interface CustomInfo extends TeamSpeakQuery.ResponseEntry { cldbid: string; ident: string; value: string; @@ -540,7 +538,7 @@ export interface TokenCustomSet extends TeamSpeakQuery.ResponseEntry { ident: string; value: string; } -export type PermOverview = PermOverviewEntry[]; +export declare type PermOverview = PermOverviewEntry[]; export interface PermOverviewEntry extends TeamSpeakQuery.ResponseEntry { t: number; id: number; @@ -554,7 +552,7 @@ export interface PermOverviewEntry extends TeamSpeakQuery.ResponseEntry { /** skip */ s: number; } -export type PermissionList = PermissionEntry[]; +export declare type PermissionList = PermissionEntry[]; export interface PermissionEntry extends TeamSpeakQuery.ResponseEntry { permid: number; permname: string; @@ -578,7 +576,7 @@ export interface PermFind extends TeamSpeakQuery.ResponseEntry { export interface Token extends TeamSpeakQuery.ResponseEntry { token: string; } -export type PrivilegeKeyList = PrivilegeKeyEntry[]; +export declare type PrivilegeKeyList = PrivilegeKeyEntry[]; export interface PrivilegeKeyEntry extends TeamSpeakQuery.ResponseEntry { token: string; tokenType: number; @@ -589,7 +587,7 @@ export interface PrivilegeKeyEntry extends TeamSpeakQuery.ResponseEntry { /** only in server version >= 3.11.x */ tokenCustomset: TokenCustomSet[]; } -export type MessageList = MessageEntry[]; +export declare type MessageList = MessageEntry[]; export interface MessageEntry extends TeamSpeakQuery.ResponseEntry { msgid: string; cluid: string; @@ -604,7 +602,7 @@ export interface MessageGet extends TeamSpeakQuery.ResponseEntry { message: string; timestamp: number; } -export type ComplainList = ComplainEntry[]; +export declare type ComplainList = ComplainEntry[]; export interface ComplainEntry extends TeamSpeakQuery.ResponseEntry { tcldbid: string; tname: string; @@ -616,7 +614,7 @@ export interface ComplainEntry extends TeamSpeakQuery.ResponseEntry { export interface BanAdd extends TeamSpeakQuery.ResponseEntry { banid: string; } -export type BanList = BanEntry[]; +export declare type BanList = BanEntry[]; export interface BanEntry extends TeamSpeakQuery.ResponseEntry { banid: string; ip: string; @@ -640,7 +638,7 @@ export interface LogView extends TeamSpeakQuery.ResponseEntry { export interface ClientDBFind extends TeamSpeakQuery.ResponseEntry { cldbid: string; } -export type FTList = FileTransferEntry[]; +export declare type FTList = FileTransferEntry[]; export interface FileTransferEntry extends TeamSpeakQuery.ResponseEntry { clid: string; path: string; @@ -655,7 +653,7 @@ export interface FileTransferEntry extends TeamSpeakQuery.ResponseEntry { averageSpeed: number; runtime: number; } -export type FTGetFileList = FTGetFileEntry[]; +export declare type FTGetFileList = FTGetFileEntry[]; export interface FTGetFileEntry extends TeamSpeakQuery.ResponseEntry { cid: string; path: string; diff --git a/sonorancad/node_modules/ts3-nodejs-library/lib/types/context.d.ts b/sonorancad/node_modules/ts3-nodejs-library/lib/types/context.d.ts index ba276ce..307cd54 100644 --- a/sonorancad/node_modules/ts3-nodejs-library/lib/types/context.d.ts +++ b/sonorancad/node_modules/ts3-nodejs-library/lib/types/context.d.ts @@ -11,7 +11,7 @@ export interface LoginInfo { username: string; password: string; } -export type Context = SelectPortContext | SelectSidContext | SelectNoneContext; +export declare type Context = SelectPortContext | SelectSidContext | SelectNoneContext; export interface SelectNoneContext extends BaseContext { selectType: SelectType.NONE; selected: 0; diff --git a/sonorancad/node_modules/ts3-nodejs-library/lib/types/context.js b/sonorancad/node_modules/ts3-nodejs-library/lib/types/context.js index 8243a2c..b51e7fe 100644 --- a/sonorancad/node_modules/ts3-nodejs-library/lib/types/context.js +++ b/sonorancad/node_modules/ts3-nodejs-library/lib/types/context.js @@ -6,5 +6,5 @@ var SelectType; SelectType[SelectType["NONE"] = 0] = "NONE"; SelectType[SelectType["SID"] = 1] = "SID"; SelectType[SelectType["PORT"] = 2] = "PORT"; -})(SelectType || (exports.SelectType = SelectType = {})); +})(SelectType = exports.SelectType || (exports.SelectType = {})); //# sourceMappingURL=context.js.map \ No newline at end of file diff --git a/sonorancad/node_modules/ts3-nodejs-library/lib/types/context.js.map b/sonorancad/node_modules/ts3-nodejs-library/lib/types/context.js.map index 2a9b319..6c08105 100644 --- a/sonorancad/node_modules/ts3-nodejs-library/lib/types/context.js.map +++ b/sonorancad/node_modules/ts3-nodejs-library/lib/types/context.js.map @@ -1 +1 @@ -{"version":3,"file":"context.js","sourceRoot":"","sources":["../../src/types/context.ts"],"names":[],"mappings":";;;AAAA,IAAY,UAIX;AAJD,WAAY,UAAU;IACpB,2CAAI,CAAA;IACJ,yCAAG,CAAA;IACH,2CAAI,CAAA;AACN,CAAC,EAJW,UAAU,0BAAV,UAAU,QAIrB"} \ No newline at end of file +{"version":3,"file":"context.js","sourceRoot":"","sources":["../../src/types/context.ts"],"names":[],"mappings":";;;AAAA,IAAY,UAIX;AAJD,WAAY,UAAU;IACpB,2CAAI,CAAA;IACJ,yCAAG,CAAA;IACH,2CAAI,CAAA;AACN,CAAC,EAJW,UAAU,GAAV,kBAAU,KAAV,kBAAU,QAIrB"} \ No newline at end of file diff --git a/sonorancad/node_modules/ts3-nodejs-library/lib/types/enum.js b/sonorancad/node_modules/ts3-nodejs-library/lib/types/enum.js index 1961023..4159e86 100644 --- a/sonorancad/node_modules/ts3-nodejs-library/lib/types/enum.js +++ b/sonorancad/node_modules/ts3-nodejs-library/lib/types/enum.js @@ -14,7 +14,7 @@ var HostMessageMode; HostMessageMode[HostMessageMode["MODAL"] = 2] = "MODAL"; /** display message in modal dialog and close connection */ HostMessageMode[HostMessageMode["MODALQUIT"] = 3] = "MODALQUIT"; -})(HostMessageMode || (exports.HostMessageMode = HostMessageMode = {})); +})(HostMessageMode = exports.HostMessageMode || (exports.HostMessageMode = {})); var HostBannerMode; (function (HostBannerMode) { /** do not adjust */ @@ -23,7 +23,7 @@ var HostBannerMode; HostBannerMode[HostBannerMode["IGNOREASPECT"] = 1] = "IGNOREASPECT"; /** adjust and keep aspect ratio */ HostBannerMode[HostBannerMode["KEEPASPECT"] = 2] = "KEEPASPECT"; -})(HostBannerMode || (exports.HostBannerMode = HostBannerMode = {})); +})(HostBannerMode = exports.HostBannerMode || (exports.HostBannerMode = {})); var Codec; (function (Codec) { /** speex narrowband (mono, 16bit, 8kHz) */ @@ -36,7 +36,7 @@ var Codec; Codec[Codec["CELT_MONO"] = 3] = "CELT_MONO"; Codec[Codec["OPUS_VOICE"] = 4] = "OPUS_VOICE"; Codec[Codec["OPUS_MUSIC"] = 5] = "OPUS_MUSIC"; -})(Codec || (exports.Codec = Codec = {})); +})(Codec = exports.Codec || (exports.Codec = {})); var CodecEncryptionMode; (function (CodecEncryptionMode) { /** configure per channel */ @@ -45,7 +45,7 @@ var CodecEncryptionMode; CodecEncryptionMode[CodecEncryptionMode["DISABLED"] = 1] = "DISABLED"; /** globally enabled */ CodecEncryptionMode[CodecEncryptionMode["ENABLED"] = 2] = "ENABLED"; -})(CodecEncryptionMode || (exports.CodecEncryptionMode = CodecEncryptionMode = {})); +})(CodecEncryptionMode = exports.CodecEncryptionMode || (exports.CodecEncryptionMode = {})); var TextMessageTargetMode; (function (TextMessageTargetMode) { /** target is a client */ @@ -54,7 +54,7 @@ var TextMessageTargetMode; TextMessageTargetMode[TextMessageTargetMode["CHANNEL"] = 2] = "CHANNEL"; /** target is a virtual server */ TextMessageTargetMode[TextMessageTargetMode["SERVER"] = 3] = "SERVER"; -})(TextMessageTargetMode || (exports.TextMessageTargetMode = TextMessageTargetMode = {})); +})(TextMessageTargetMode = exports.TextMessageTargetMode || (exports.TextMessageTargetMode = {})); var LogLevel; (function (LogLevel) { /** everything that is really bad */ @@ -65,14 +65,14 @@ var LogLevel; LogLevel[LogLevel["DEBUG"] = 3] = "DEBUG"; /** informational output */ LogLevel[LogLevel["INFO"] = 4] = "INFO"; -})(LogLevel || (exports.LogLevel = LogLevel = {})); +})(LogLevel = exports.LogLevel || (exports.LogLevel = {})); var ReasonIdentifier; (function (ReasonIdentifier) { /** kick client from channel */ ReasonIdentifier[ReasonIdentifier["KICK_CHANNEL"] = 4] = "KICK_CHANNEL"; /** kick client from server */ ReasonIdentifier[ReasonIdentifier["KICK_SERVER"] = 5] = "KICK_SERVER"; -})(ReasonIdentifier || (exports.ReasonIdentifier = ReasonIdentifier = {})); +})(ReasonIdentifier = exports.ReasonIdentifier || (exports.ReasonIdentifier = {})); var PermissionGroupDatabaseTypes; (function (PermissionGroupDatabaseTypes) { /** template group (used for new virtual servers) */ @@ -81,7 +81,7 @@ var PermissionGroupDatabaseTypes; PermissionGroupDatabaseTypes[PermissionGroupDatabaseTypes["Regular"] = 1] = "Regular"; /** global query group (used for ServerQuery clients) */ PermissionGroupDatabaseTypes[PermissionGroupDatabaseTypes["Query"] = 2] = "Query"; -})(PermissionGroupDatabaseTypes || (exports.PermissionGroupDatabaseTypes = PermissionGroupDatabaseTypes = {})); +})(PermissionGroupDatabaseTypes = exports.PermissionGroupDatabaseTypes || (exports.PermissionGroupDatabaseTypes = {})); var PermissionGroupTypes; (function (PermissionGroupTypes) { /** server group permission */ @@ -94,25 +94,25 @@ var PermissionGroupTypes; PermissionGroupTypes[PermissionGroupTypes["ChannelGroup"] = 3] = "ChannelGroup"; /** channel-client specific permission */ PermissionGroupTypes[PermissionGroupTypes["ChannelClient"] = 4] = "ChannelClient"; -})(PermissionGroupTypes || (exports.PermissionGroupTypes = PermissionGroupTypes = {})); +})(PermissionGroupTypes = exports.PermissionGroupTypes || (exports.PermissionGroupTypes = {})); var TokenType; (function (TokenType) { /** server group token (id1={groupID} id2=0) */ TokenType[TokenType["ServerGroup"] = 0] = "ServerGroup"; /** channel group token (id1={groupID} id2={channelID}) */ TokenType[TokenType["ChannelGroup"] = 1] = "ChannelGroup"; -})(TokenType || (exports.TokenType = TokenType = {})); +})(TokenType = exports.TokenType || (exports.TokenType = {})); var ClientType; (function (ClientType) { ClientType[ClientType["Regular"] = 0] = "Regular"; ClientType[ClientType["ServerQuery"] = 1] = "ServerQuery"; -})(ClientType || (exports.ClientType = ClientType = {})); +})(ClientType = exports.ClientType || (exports.ClientType = {})); var ApiKeyScope; (function (ApiKeyScope) { ApiKeyScope["MANAGE"] = "manage"; ApiKeyScope["READ"] = "read"; ApiKeyScope["WRITE"] = "write"; -})(ApiKeyScope || (exports.ApiKeyScope = ApiKeyScope = {})); +})(ApiKeyScope = exports.ApiKeyScope || (exports.ApiKeyScope = {})); var VirtualServerStatus; (function (VirtualServerStatus) { VirtualServerStatus["UNKNOWN"] = "unknown"; @@ -130,5 +130,5 @@ var VirtualServerStatus; VirtualServerStatus["ONLINE_VIRTUAL"] = "online virtual"; /* the virtual server is running in another TeamSpeak instance */ VirtualServerStatus["OTHER_INSTANCE"] = "other instance"; -})(VirtualServerStatus || (exports.VirtualServerStatus = VirtualServerStatus = {})); +})(VirtualServerStatus = exports.VirtualServerStatus || (exports.VirtualServerStatus = {})); //# sourceMappingURL=enum.js.map \ No newline at end of file diff --git a/sonorancad/node_modules/ts3-nodejs-library/lib/types/enum.js.map b/sonorancad/node_modules/ts3-nodejs-library/lib/types/enum.js.map index d0ff093..b81e5e7 100644 --- a/sonorancad/node_modules/ts3-nodejs-library/lib/types/enum.js.map +++ b/sonorancad/node_modules/ts3-nodejs-library/lib/types/enum.js.map @@ -1 +1 @@ -{"version":3,"file":"enum.js","sourceRoot":"","sources":["../../src/types/enum.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"enum.js","sourceRoot":"","sources":["../../src/types/enum.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/sonorancad/node_modules/ts3-nodejs-library/src/TeamSpeak.ts b/sonorancad/node_modules/ts3-nodejs-library/src/TeamSpeak.ts index e1af4b4..78ec1e8 100644 --- a/sonorancad/node_modules/ts3-nodejs-library/src/TeamSpeak.ts +++ b/sonorancad/node_modules/ts3-nodejs-library/src/TeamSpeak.ts @@ -1316,13 +1316,8 @@ export class TeamSpeak extends EventEmitter { * @param ident the key to search for * @param pattern the search pattern to use */ - async customSearch(ident: string, pattern: string) { - try { - return await this.execute("customsearch", { ident, pattern }) - } catch (e) { - if (e.id !== "1281") return [] //empty result set - throw e - } + customSearch(ident: string, pattern: string) { + return this.execute("customsearch", { ident, pattern }).then(TeamSpeak.singleResponse) } @@ -1330,13 +1325,8 @@ export class TeamSpeak extends EventEmitter { * returns a list of custom properties for the client specified with cldbid. * @param client the Client Database ID which should be retrieved */ - async customInfo(client: TeamSpeakClient.ClientType) { - try { - return await this.execute("custominfo", { cldbid: TeamSpeakClient.getDbid(client) }) - } catch (e) { - if (e.id === "1281") return [] //empty result set - throw e - } + customInfo(client: TeamSpeakClient.ClientType) { + return this.execute("custominfo", { cldbid: TeamSpeakClient.getDbid(client) }) } @@ -2403,7 +2393,7 @@ export class TeamSpeak extends EventEmitter { /** * retrieves an instance of the Permission */ - private getPermBuilder(init: Omit, "teamspeak">) { + private getPermBuilder(init: Omit, "teamspeak">) { return new Permission({ teamspeak: this, ...init diff --git a/sonorancad/node_modules/ts3-nodejs-library/src/transport/Command.ts b/sonorancad/node_modules/ts3-nodejs-library/src/transport/Command.ts index ea4c0f6..d6bf153 100644 --- a/sonorancad/node_modules/ts3-nodejs-library/src/transport/Command.ts +++ b/sonorancad/node_modules/ts3-nodejs-library/src/transport/Command.ts @@ -564,7 +564,7 @@ export namespace Command { clientLoginPassword: Command.parseString, clientTotalconnections: Command.parseNumber, clientFlagAvatar: Command.parseString, - clientTalkRequest: Command.parseNumber, + clientTalkRequest: Command.parseBoolean, clientTalkRequestMsg: Command.parseString, clientMonthBytesUploaded: Command.parseNumber, clientMonthBytesDownloaded: Command.parseNumber, diff --git a/sonorancad/node_modules/ts3-nodejs-library/src/transport/protocols/ssh.ts b/sonorancad/node_modules/ts3-nodejs-library/src/transport/protocols/ssh.ts index 3b3fa46..09fc380 100644 --- a/sonorancad/node_modules/ts3-nodejs-library/src/transport/protocols/ssh.ts +++ b/sonorancad/node_modules/ts3-nodejs-library/src/transport/protocols/ssh.ts @@ -27,7 +27,15 @@ export class ProtocolSSH extends EventEmitter implements TeamSpeakQuery.QueryPro password: config.password, readyTimeout: config.readyTimeout, algorithms: { - serverHostKey: ["rsa-sha2-512"] + serverHostKey: [ + "ssh-rsa", + "ssh-ed25519", + "ecdsa-sha2-nistp256", + "ecdsa-sha2-nistp384", + "ecdsa-sha2-nistp521", + "rsa-sha2-512", + "rsa-sha2-256" + ] }, //@ts-ignore not implemented by @types repo localAddress: config.localAddress diff --git a/sonorancad/node_modules/ts3-nodejs-library/src/types/Events.ts b/sonorancad/node_modules/ts3-nodejs-library/src/types/Events.ts index 88dc792..b92fffe 100644 --- a/sonorancad/node_modules/ts3-nodejs-library/src/types/Events.ts +++ b/sonorancad/node_modules/ts3-nodejs-library/src/types/Events.ts @@ -1,7 +1,10 @@ import { TeamSpeakClient } from "../node/Client" import { TeamSpeakChannel } from "../node/Channel" import { ClientList } from "./ResponseTypes" -import { TextMessageTargetMode } from "./enum" +import { + TextMessageTargetMode, + ReasonIdentifier +} from "./enum" export interface Debug { type: string, @@ -15,20 +18,16 @@ export interface ClientConnect { export interface ClientDisconnect { client?: TeamSpeakClient event: { - cfid: string - ctid: string - reasonid: string - reasonmsg: string + cfid: string, + ctid: string, + reasonid: string, + reasonmsg: string, clid: string - invokerid?: string - invokername?: string - invokeruid?: string - bantime?: number } } export interface TokenUsed { - client: TeamSpeakClient + client: ClientList token: string token1: string token2: string diff --git a/sonorancad/node_modules/ts3-nodejs-library/src/types/ResponseTypes.ts b/sonorancad/node_modules/ts3-nodejs-library/src/types/ResponseTypes.ts index 7be2d75..f111d34 100644 --- a/sonorancad/node_modules/ts3-nodejs-library/src/types/ResponseTypes.ts +++ b/sonorancad/node_modules/ts3-nodejs-library/src/types/ResponseTypes.ts @@ -503,7 +503,7 @@ export interface ClientInfo extends TeamSpeakQuery.ResponseEntry { clientType: ClientType clientFlagAvatar: string clientTalkPower: number - clientTalkRequest: number + clientTalkRequest: boolean clientTalkRequestMsg: string clientDescription: string clientIsTalker: boolean @@ -570,15 +570,13 @@ export interface ClientDBInfo extends TeamSpeakQuery.ResponseEntry { clientLastip: string } -export type CustomSearch = CustomSearchEntry[] -export interface CustomSearchEntry extends TeamSpeakQuery.ResponseEntry { +export interface CustomSearch extends TeamSpeakQuery.ResponseEntry { cldbid: string ident: string value: string } -export type CustomInfo = CustomInfoEntry[] -export interface CustomInfoEntry extends TeamSpeakQuery.ResponseEntry { +export interface CustomInfo extends TeamSpeakQuery.ResponseEntry { cldbid: string ident: string value: string diff --git a/sonorancad/node_modules/ts3-nodejs-library/tests/mocks/mockresponse.ts b/sonorancad/node_modules/ts3-nodejs-library/tests/mocks/mockresponse.ts index 4d1b2b0..47c47f2 100644 --- a/sonorancad/node_modules/ts3-nodejs-library/tests/mocks/mockresponse.ts +++ b/sonorancad/node_modules/ts3-nodejs-library/tests/mocks/mockresponse.ts @@ -422,7 +422,7 @@ export function clientinfo(props: Partial = {}): Response.C clientType: 1, clientFlagAvatar: "0", clientTalkPower: 0, - clientTalkRequest: 0, + clientTalkRequest: false, clientTalkRequestMsg: "", clientDescription: "", clientIsTalker: false, @@ -496,22 +496,22 @@ export function clientdbinfo(props: Partial = {}): Respon } } -export function customsearch(props: Partial = {}): Response.CustomSearch { - return [{ +export function customsearch(props: Partial = {}): Response.CustomSearch { + return { cldbid: "0", ident: "", value: "", ...props - }] + } } -export function custominfo(props: Partial = {}): Response.CustomInfo { - return [{ +export function custominfo(props: Partial = {}): Response.CustomInfo { + return { cldbid: "0", ident: "", value: "", ...props - }] + } } export function permoverview(props: Partial = {}): Response.PermOverviewEntry { diff --git a/sonorancad/node_modules/unzipper/.travis.yml b/sonorancad/node_modules/unzipper/.travis.yml index dd03077..8a9865c 100644 --- a/sonorancad/node_modules/unzipper/.travis.yml +++ b/sonorancad/node_modules/unzipper/.travis.yml @@ -1,10 +1,5 @@ language: node_js node_js: - - "lts/*" - - "17" - - "16" - - "15" - - "14" - "13" - "12" - "10" diff --git a/sonorancad/node_modules/unzipper/README.md b/sonorancad/node_modules/unzipper/README.md index 0436cda..bf376e5 100644 --- a/sonorancad/node_modules/unzipper/README.md +++ b/sonorancad/node_modules/unzipper/README.md @@ -145,7 +145,7 @@ Example: ```js fs.createReadStream('path/to/archive.zip') .pipe(unzipper.ParseOne()) - .pipe(fs.createWriteStream('firstFile.txt')); + .pipe(fs.createReadStream('firstFile.txt')); ``` ### Buffering the content of an entry into memory @@ -220,7 +220,7 @@ Example: ```js async function main() { const directory = await unzipper.Open.file('path/to/archive.zip'); - console.log('directory', directory); + console.log('directory', d); return new Promise( (resolve, reject) => { directory.files[0] .stream() @@ -317,41 +317,6 @@ async function main() { main(); ``` -### Open.custom(source, [options]) -This function can be used to provide a custom source implementation. The source parameter expects a `stream` and a `size` function to be implemented. The size function should return a `Promise` that resolves the total size of the file. The stream function should return a `Readable` stream according to the supplied offset and length parameters. - -Example: - -```js -// Custom source implementation for reading a zip file from Google Cloud Storage -const { Storage } = require('@google-cloud/storage'); - -async function main() { - const storage = new Storage(); - const bucket = storage.bucket('my-bucket'); - const zipFile = bucket.file('my-zip-file.zip'); - - const customSource = { - stream: function(offset, length) { - return zipFile.createReadStream({ - start: offset, - end: length && offset + length - }) - }, - size: async function() { - const objMetadata = (await zipFile.getMetadata())[0]; - return objMetadata.size; - } - }; - - const directory = await unzipper.Open.custom(customSource); - console.log('directory', directory); - // ... -} - -main(); -``` - ### Open.[method].extract() The directory object returned from `Open.[method]` provides an `extract` method which extracts all the files to a specified `path`, with an optional `concurrency` (default: 1). diff --git a/sonorancad/node_modules/unzipper/lib/Open/directory.js b/sonorancad/node_modules/unzipper/lib/Open/directory.js index d74dba7..3035eef 100644 --- a/sonorancad/node_modules/unzipper/lib/Open/directory.js +++ b/sonorancad/node_modules/unzipper/lib/Open/directory.js @@ -141,18 +141,11 @@ module.exports = function centralDirectory(source, options) { vars.offsetToStartOfCentralDirectory += startOffset; } }) - .then(function() { - if (vars.commentLength) return endDir.pull(vars.commentLength).then(function(comment) { - vars.comment = comment.toString('utf8'); - }); - }) .then(function() { source.stream(vars.offsetToStartOfCentralDirectory).pipe(records); vars.extract = function(opts) { if (!opts || !opts.path) throw new Error('PATH_MISSING'); - // make sure path is normalized before using it - opts.path = path.resolve(path.normalize(opts.path)); return vars.files.then(function(files) { return Promise.map(files, function(entry) { if (entry.type == 'Directory') return; @@ -173,7 +166,7 @@ module.exports = function centralDirectory(source, options) { .on('close',resolve) .on('error',reject); }); - }, { concurrency: opts.concurrency > 1 ? opts.concurrency : 1 }); + }, opts.concurrency > 1 ? {concurrency: opts.concurrency || undefined} : undefined); }); }; @@ -205,7 +198,7 @@ module.exports = function centralDirectory(source, options) { return records.pull(vars.fileNameLength).then(function(fileNameBuffer) { vars.pathBuffer = fileNameBuffer; vars.path = fileNameBuffer.toString('utf8'); - vars.isUnicode = (vars.flags & 0x800) != 0; + vars.isUnicode = vars.flags & 0x11; return records.pull(vars.extraFieldLength); }) .then(function(extraField) { diff --git a/sonorancad/node_modules/unzipper/lib/Open/index.js b/sonorancad/node_modules/unzipper/lib/Open/index.js index fd89746..f6c4068 100644 --- a/sonorancad/node_modules/unzipper/lib/Open/index.js +++ b/sonorancad/node_modules/unzipper/lib/Open/index.js @@ -92,10 +92,6 @@ module.exports = { } }; - return directory(source, options); - }, - - custom: function(source, options) { return directory(source, options); } }; diff --git a/sonorancad/node_modules/unzipper/lib/Open/unzip.js b/sonorancad/node_modules/unzipper/lib/Open/unzip.js index 099bf10..8739205 100644 --- a/sonorancad/node_modules/unzipper/lib/Open/unzip.js +++ b/sonorancad/node_modules/unzipper/lib/Open/unzip.js @@ -106,9 +106,7 @@ module.exports = function unzip(source,offset,_password, directoryVars) { .on('error',function(err) { entry.emit('error',err);}) .pipe(entry) .on('finish', function() { - if(req.destroy) - req.destroy() - else if (req.abort) + if (req.abort) req.abort(); else if (req.close) req.close(); diff --git a/sonorancad/node_modules/unzipper/lib/PullStream.js b/sonorancad/node_modules/unzipper/lib/PullStream.js index bbeeb86..3fa9d26 100644 --- a/sonorancad/node_modules/unzipper/lib/PullStream.js +++ b/sonorancad/node_modules/unzipper/lib/PullStream.js @@ -78,9 +78,10 @@ PullStream.prototype.stream = function(eof,includeEof) { } if (!done) { - if (self.finished) { + if (self.finished && !this.__ended) { self.removeListener('chunk',pull); self.emit('error', new Error('FILE_ENDED')); + this.__ended = true; return; } diff --git a/sonorancad/node_modules/unzipper/lib/parse.js b/sonorancad/node_modules/unzipper/lib/parse.js index a7b0a5b..bd3b8cc 100644 --- a/sonorancad/node_modules/unzipper/lib/parse.js +++ b/sonorancad/node_modules/unzipper/lib/parse.js @@ -26,7 +26,6 @@ function Parse(opts) { PullStream.call(self, self._opts); self.on('finish',function() { - self.emit('end'); self.emit('close'); }); self._readRecord().catch(function(e) { @@ -52,19 +51,16 @@ Parse.prototype._readRecord = function () { return self._readFile(); } else if (signature === 0x02014b50) { - self.reachedCD = true; + self.__ended = true; return self._readCentralDirectoryFileHeader(); } else if (signature === 0x06054b50) { return self._readEndOfCentralDirectoryRecord(); } - else if (self.reachedCD) { - // _readEndOfCentralDirectoryRecord expects the EOCD - // signature to be consumed so set includeEof=true - var includeEof = true; - return self.pull(endDirectorySignature, includeEof).then(function() { - return self._readEndOfCentralDirectoryRecord(); - }); + else if (self.__ended) { + return self.pull(endDirectorySignature).then(function() { + return self._readEndOfCentralDirectoryRecord(); + }); } else self.emit('error', new Error('invalid signature: 0x' + signature.toString(16))); @@ -134,7 +130,7 @@ Parse.prototype._readFile = function () { entry.props.path = fileName; entry.props.pathBuffer = fileNameBuffer; entry.props.flags = { - "isUnicode": (vars.flags & 0x800) != 0 + "isUnicode": vars.flags & 0x11 }; entry.type = (vars.uncompressedSize === 0 && /[\/\\]$/.test(fileName)) ? 'Directory' : 'File'; diff --git a/sonorancad/package-lock.json b/sonorancad/package-lock.json deleted file mode 100644 index e4f07ed..0000000 --- a/sonorancad/package-lock.json +++ /dev/null @@ -1,699 +0,0 @@ -{ - "name": "sonorancad", - "lockfileVersion": 2, - "requires": true, - "packages": { - "": { - "dependencies": { - "ts3-nodejs-library": "^3.4.0", - "unzipper": "^0.10.11" - } - }, - "node_modules/asn1": { - "version": "0.2.6", - "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.6.tgz", - "integrity": "sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ==", - "dependencies": { - "safer-buffer": "~2.1.0" - } - }, - "node_modules/balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" - }, - "node_modules/bcrypt-pbkdf": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", - "integrity": "sha512-qeFIXtP4MSoi6NLqO12WfqARWWuCKi2Rn/9hJLEmtB5yTNr9DqFWkJRCf2qShWzPeAMRnOgCrq0sg/KLv5ES9w==", - "dependencies": { - "tweetnacl": "^0.14.3" - } - }, - "node_modules/big-integer": { - "version": "1.6.52", - "resolved": "https://registry.npmjs.org/big-integer/-/big-integer-1.6.52.tgz", - "integrity": "sha512-QxD8cf2eVqJOOz63z6JIN9BzvVs/dlySa5HGSBH5xtR8dPteIRQnBxxKqkNTiT6jbDTF6jAfrd4oMcND9RGbQg==", - "engines": { - "node": ">=0.6" - } - }, - "node_modules/binary": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/binary/-/binary-0.3.0.tgz", - "integrity": "sha512-D4H1y5KYwpJgK8wk1Cue5LLPgmwHKYSChkbspQg5JtVuR5ulGckxfR62H3AE9UDkdMC8yyXlqYihuz3Aqg2XZg==", - "dependencies": { - "buffers": "~0.1.1", - "chainsaw": "~0.1.0" - }, - "engines": { - "node": "*" - } - }, - "node_modules/bluebird": { - "version": "3.4.7", - "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.4.7.tgz", - "integrity": "sha512-iD3898SR7sWVRHbiQv+sHUtHnMvC1o3nW5rAcqnq3uOn07DSAppZYUkIGslDz6gXC7HfunPe7YVBgoEJASPcHA==" - }, - "node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/buffer-crc32": { - "version": "0.2.13", - "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", - "integrity": "sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==", - "engines": { - "node": "*" - } - }, - "node_modules/buffer-indexof-polyfill": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/buffer-indexof-polyfill/-/buffer-indexof-polyfill-1.0.2.tgz", - "integrity": "sha512-I7wzHwA3t1/lwXQh+A5PbNvJxgfo5r3xulgpYDB5zckTu/Z9oUK9biouBKQUjEqzaz3HnAT6TYoovmE+GqSf7A==", - "engines": { - "node": ">=0.10" - } - }, - "node_modules/buffers": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/buffers/-/buffers-0.1.1.tgz", - "integrity": "sha512-9q/rDEGSb/Qsvv2qvzIzdluL5k7AaJOTrw23z9reQthrbF7is4CtlT0DXyO1oei2DCp4uojjzQ7igaSHp1kAEQ==", - "engines": { - "node": ">=0.2.0" - } - }, - "node_modules/buildcheck": { - "version": "0.0.6", - "resolved": "https://registry.npmjs.org/buildcheck/-/buildcheck-0.0.6.tgz", - "integrity": "sha512-8f9ZJCUXyT1M35Jx7MkBgmBMo3oHTTBIPLiY9xyL0pl3T5RwcPEY8cUHr5LBNfu/fk6c2T4DJZuVM/8ZZT2D2A==", - "optional": true, - "engines": { - "node": ">=10.0.0" - } - }, - "node_modules/chainsaw": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/chainsaw/-/chainsaw-0.1.0.tgz", - "integrity": "sha512-75kWfWt6MEKNC8xYXIdRpDehRYY/tNSgwKaJq+dbbDcxORuVrrQ+SEHoWsniVn9XPYfP4gmdWIeDk/4YNp1rNQ==", - "dependencies": { - "traverse": ">=0.3.0 <0.4" - }, - "engines": { - "node": "*" - } - }, - "node_modules/concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==" - }, - "node_modules/core-util-is": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", - "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==" - }, - "node_modules/cpu-features": { - "version": "0.0.10", - "resolved": "https://registry.npmjs.org/cpu-features/-/cpu-features-0.0.10.tgz", - "integrity": "sha512-9IkYqtX3YHPCzoVg1Py+o9057a3i0fp7S530UWokCSaFVTc7CwXPRiOjRjBQQ18ZCNafx78YfnG+HALxtVmOGA==", - "hasInstallScript": true, - "optional": true, - "dependencies": { - "buildcheck": "~0.0.6", - "nan": "^2.19.0" - }, - "engines": { - "node": ">=10.0.0" - } - }, - "node_modules/duplexer2": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.1.4.tgz", - "integrity": "sha512-asLFVfWWtJ90ZyOUHMqk7/S2w2guQKxUI2itj3d92ADHhxUSbCMGi1f1cBcJ7xM1To+pE/Khbwo1yuNbMEPKeA==", - "dependencies": { - "readable-stream": "^2.0.2" - } - }, - "node_modules/fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==" - }, - "node_modules/fstream": { - "version": "1.0.12", - "resolved": "https://registry.npmjs.org/fstream/-/fstream-1.0.12.tgz", - "integrity": "sha512-WvJ193OHa0GHPEL+AycEJgxvBEwyfRkN1vhjca23OaPVMCaLCXTd5qAu82AjTcgP1UJmytkOKb63Ypde7raDIg==", - "deprecated": "This package is no longer supported.", - "dependencies": { - "graceful-fs": "^4.1.2", - "inherits": "~2.0.0", - "mkdirp": ">=0.5 0", - "rimraf": "2" - }, - "engines": { - "node": ">=0.6" - } - }, - "node_modules/glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "deprecated": "Glob versions prior to v9 are no longer supported", - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/graceful-fs": { - "version": "4.2.11", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", - "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==" - }, - "node_modules/inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", - "deprecated": "This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.", - "dependencies": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "node_modules/inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" - }, - "node_modules/isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" - }, - "node_modules/listenercount": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/listenercount/-/listenercount-1.0.1.tgz", - "integrity": "sha512-3mk/Zag0+IJxeDrxSgaDPy4zZ3w05PRZeJNnlWhzFz5OkX49J4krc+A8X2d2M69vGMBEX0uyl8M+W+8gH+kBqQ==" - }, - "node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/minimist": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", - "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/mkdirp": { - "version": "0.5.6", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", - "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", - "dependencies": { - "minimist": "^1.2.6" - }, - "bin": { - "mkdirp": "bin/cmd.js" - } - }, - "node_modules/nan": { - "version": "2.22.0", - "resolved": "https://registry.npmjs.org/nan/-/nan-2.22.0.tgz", - "integrity": "sha512-nbajikzWTMwsW+eSsNm3QwlOs7het9gGJU5dDZzRTQGk03vyBOauxgI4VakDzE0PtsGTmXPsXTbbjVhRwR5mpw==", - "optional": true - }, - "node_modules/once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", - "dependencies": { - "wrappy": "1" - } - }, - "node_modules/path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/process-nextick-args": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", - "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==" - }, - "node_modules/readable-stream": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", - "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", - "dependencies": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "node_modules/rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", - "deprecated": "Rimraf versions prior to v4 are no longer supported", - "dependencies": { - "glob": "^7.1.3" - }, - "bin": { - "rimraf": "bin.js" - } - }, - "node_modules/safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" - }, - "node_modules/safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" - }, - "node_modules/setimmediate": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", - "integrity": "sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==" - }, - "node_modules/ssh2": { - "version": "1.16.0", - "resolved": "https://registry.npmjs.org/ssh2/-/ssh2-1.16.0.tgz", - "integrity": "sha512-r1X4KsBGedJqo7h8F5c4Ybpcr5RjyP+aWIG007uBPRjmdQWfEiVLzSK71Zji1B9sKxwaCvD8y8cwSkYrlLiRRg==", - "hasInstallScript": true, - "dependencies": { - "asn1": "^0.2.6", - "bcrypt-pbkdf": "^1.0.2" - }, - "engines": { - "node": ">=10.16.0" - }, - "optionalDependencies": { - "cpu-features": "~0.0.10", - "nan": "^2.20.0" - } - }, - "node_modules/string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dependencies": { - "safe-buffer": "~5.1.0" - } - }, - "node_modules/traverse": { - "version": "0.3.9", - "resolved": "https://registry.npmjs.org/traverse/-/traverse-0.3.9.tgz", - "integrity": "sha512-iawgk0hLP3SxGKDfnDJf8wTz4p2qImnyihM5Hh/sGvQ3K37dPi/w8sRhdNIxYA1TwFwc5mDhIJq+O0RsvXBKdQ==", - "engines": { - "node": "*" - } - }, - "node_modules/ts3-nodejs-library": { - "version": "3.5.1", - "resolved": "https://registry.npmjs.org/ts3-nodejs-library/-/ts3-nodejs-library-3.5.1.tgz", - "integrity": "sha512-hdGAj2lhMyAeLVc1j7sOLA8/pjwib32jtA8ncokNDLg6EGTe/AqcsCT3D/34e8xIuidD4XMMXA8yWf64lQN4Dg==", - "dependencies": { - "buffer-crc32": "^0.2.13", - "ssh2": "^1.14.0" - } - }, - "node_modules/tweetnacl": { - "version": "0.14.5", - "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", - "integrity": "sha512-KXXFFdAbFXY4geFIwoyNK+f5Z1b7swfXABfL7HXCmoIWMKU3dmS26672A4EeQtDzLKy7SXmfBu51JolvEKwtGA==" - }, - "node_modules/unzipper": { - "version": "0.10.14", - "resolved": "https://registry.npmjs.org/unzipper/-/unzipper-0.10.14.tgz", - "integrity": "sha512-ti4wZj+0bQTiX2KmKWuwj7lhV+2n//uXEotUmGuQqrbVZSEGFMbI68+c6JCQ8aAmUWYvtHEz2A8K6wXvueR/6g==", - "dependencies": { - "big-integer": "^1.6.17", - "binary": "~0.3.0", - "bluebird": "~3.4.1", - "buffer-indexof-polyfill": "~1.0.0", - "duplexer2": "~0.1.4", - "fstream": "^1.0.12", - "graceful-fs": "^4.2.2", - "listenercount": "~1.0.1", - "readable-stream": "~2.3.6", - "setimmediate": "~1.0.4" - } - }, - "node_modules/util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==" - }, - "node_modules/wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" - } - }, - "dependencies": { - "asn1": { - "version": "0.2.6", - "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.6.tgz", - "integrity": "sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ==", - "requires": { - "safer-buffer": "~2.1.0" - } - }, - "balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" - }, - "bcrypt-pbkdf": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", - "integrity": "sha512-qeFIXtP4MSoi6NLqO12WfqARWWuCKi2Rn/9hJLEmtB5yTNr9DqFWkJRCf2qShWzPeAMRnOgCrq0sg/KLv5ES9w==", - "requires": { - "tweetnacl": "^0.14.3" - } - }, - "big-integer": { - "version": "1.6.52", - "resolved": "https://registry.npmjs.org/big-integer/-/big-integer-1.6.52.tgz", - "integrity": "sha512-QxD8cf2eVqJOOz63z6JIN9BzvVs/dlySa5HGSBH5xtR8dPteIRQnBxxKqkNTiT6jbDTF6jAfrd4oMcND9RGbQg==" - }, - "binary": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/binary/-/binary-0.3.0.tgz", - "integrity": "sha512-D4H1y5KYwpJgK8wk1Cue5LLPgmwHKYSChkbspQg5JtVuR5ulGckxfR62H3AE9UDkdMC8yyXlqYihuz3Aqg2XZg==", - "requires": { - "buffers": "~0.1.1", - "chainsaw": "~0.1.0" - } - }, - "bluebird": { - "version": "3.4.7", - "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.4.7.tgz", - "integrity": "sha512-iD3898SR7sWVRHbiQv+sHUtHnMvC1o3nW5rAcqnq3uOn07DSAppZYUkIGslDz6gXC7HfunPe7YVBgoEJASPcHA==" - }, - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "buffer-crc32": { - "version": "0.2.13", - "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", - "integrity": "sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==" - }, - "buffer-indexof-polyfill": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/buffer-indexof-polyfill/-/buffer-indexof-polyfill-1.0.2.tgz", - "integrity": "sha512-I7wzHwA3t1/lwXQh+A5PbNvJxgfo5r3xulgpYDB5zckTu/Z9oUK9biouBKQUjEqzaz3HnAT6TYoovmE+GqSf7A==" - }, - "buffers": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/buffers/-/buffers-0.1.1.tgz", - "integrity": "sha512-9q/rDEGSb/Qsvv2qvzIzdluL5k7AaJOTrw23z9reQthrbF7is4CtlT0DXyO1oei2DCp4uojjzQ7igaSHp1kAEQ==" - }, - "buildcheck": { - "version": "0.0.6", - "resolved": "https://registry.npmjs.org/buildcheck/-/buildcheck-0.0.6.tgz", - "integrity": "sha512-8f9ZJCUXyT1M35Jx7MkBgmBMo3oHTTBIPLiY9xyL0pl3T5RwcPEY8cUHr5LBNfu/fk6c2T4DJZuVM/8ZZT2D2A==", - "optional": true - }, - "chainsaw": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/chainsaw/-/chainsaw-0.1.0.tgz", - "integrity": "sha512-75kWfWt6MEKNC8xYXIdRpDehRYY/tNSgwKaJq+dbbDcxORuVrrQ+SEHoWsniVn9XPYfP4gmdWIeDk/4YNp1rNQ==", - "requires": { - "traverse": ">=0.3.0 <0.4" - } - }, - "concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==" - }, - "core-util-is": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", - "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==" - }, - "cpu-features": { - "version": "0.0.10", - "resolved": "https://registry.npmjs.org/cpu-features/-/cpu-features-0.0.10.tgz", - "integrity": "sha512-9IkYqtX3YHPCzoVg1Py+o9057a3i0fp7S530UWokCSaFVTc7CwXPRiOjRjBQQ18ZCNafx78YfnG+HALxtVmOGA==", - "optional": true, - "requires": { - "buildcheck": "~0.0.6", - "nan": "^2.19.0" - } - }, - "duplexer2": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.1.4.tgz", - "integrity": "sha512-asLFVfWWtJ90ZyOUHMqk7/S2w2guQKxUI2itj3d92ADHhxUSbCMGi1f1cBcJ7xM1To+pE/Khbwo1yuNbMEPKeA==", - "requires": { - "readable-stream": "^2.0.2" - } - }, - "fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==" - }, - "fstream": { - "version": "1.0.12", - "resolved": "https://registry.npmjs.org/fstream/-/fstream-1.0.12.tgz", - "integrity": "sha512-WvJ193OHa0GHPEL+AycEJgxvBEwyfRkN1vhjca23OaPVMCaLCXTd5qAu82AjTcgP1UJmytkOKb63Ypde7raDIg==", - "requires": { - "graceful-fs": "^4.1.2", - "inherits": "~2.0.0", - "mkdirp": ">=0.5 0", - "rimraf": "2" - } - }, - "glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "graceful-fs": { - "version": "4.2.11", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", - "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==" - }, - "inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", - "requires": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" - }, - "isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" - }, - "listenercount": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/listenercount/-/listenercount-1.0.1.tgz", - "integrity": "sha512-3mk/Zag0+IJxeDrxSgaDPy4zZ3w05PRZeJNnlWhzFz5OkX49J4krc+A8X2d2M69vGMBEX0uyl8M+W+8gH+kBqQ==" - }, - "minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "minimist": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", - "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==" - }, - "mkdirp": { - "version": "0.5.6", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", - "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", - "requires": { - "minimist": "^1.2.6" - } - }, - "nan": { - "version": "2.22.0", - "resolved": "https://registry.npmjs.org/nan/-/nan-2.22.0.tgz", - "integrity": "sha512-nbajikzWTMwsW+eSsNm3QwlOs7het9gGJU5dDZzRTQGk03vyBOauxgI4VakDzE0PtsGTmXPsXTbbjVhRwR5mpw==", - "optional": true - }, - "once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", - "requires": { - "wrappy": "1" - } - }, - "path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==" - }, - "process-nextick-args": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", - "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==" - }, - "readable-stream": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", - "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", - "requires": { - "glob": "^7.1.3" - } - }, - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" - }, - "safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" - }, - "setimmediate": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", - "integrity": "sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==" - }, - "ssh2": { - "version": "1.16.0", - "resolved": "https://registry.npmjs.org/ssh2/-/ssh2-1.16.0.tgz", - "integrity": "sha512-r1X4KsBGedJqo7h8F5c4Ybpcr5RjyP+aWIG007uBPRjmdQWfEiVLzSK71Zji1B9sKxwaCvD8y8cwSkYrlLiRRg==", - "requires": { - "asn1": "^0.2.6", - "bcrypt-pbkdf": "^1.0.2", - "cpu-features": "~0.0.10", - "nan": "^2.20.0" - } - }, - "string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "requires": { - "safe-buffer": "~5.1.0" - } - }, - "traverse": { - "version": "0.3.9", - "resolved": "https://registry.npmjs.org/traverse/-/traverse-0.3.9.tgz", - "integrity": "sha512-iawgk0hLP3SxGKDfnDJf8wTz4p2qImnyihM5Hh/sGvQ3K37dPi/w8sRhdNIxYA1TwFwc5mDhIJq+O0RsvXBKdQ==" - }, - "ts3-nodejs-library": { - "version": "3.5.1", - "resolved": "https://registry.npmjs.org/ts3-nodejs-library/-/ts3-nodejs-library-3.5.1.tgz", - "integrity": "sha512-hdGAj2lhMyAeLVc1j7sOLA8/pjwib32jtA8ncokNDLg6EGTe/AqcsCT3D/34e8xIuidD4XMMXA8yWf64lQN4Dg==", - "requires": { - "buffer-crc32": "^0.2.13", - "ssh2": "^1.14.0" - } - }, - "tweetnacl": { - "version": "0.14.5", - "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", - "integrity": "sha512-KXXFFdAbFXY4geFIwoyNK+f5Z1b7swfXABfL7HXCmoIWMKU3dmS26672A4EeQtDzLKy7SXmfBu51JolvEKwtGA==" - }, - "unzipper": { - "version": "0.10.14", - "resolved": "https://registry.npmjs.org/unzipper/-/unzipper-0.10.14.tgz", - "integrity": "sha512-ti4wZj+0bQTiX2KmKWuwj7lhV+2n//uXEotUmGuQqrbVZSEGFMbI68+c6JCQ8aAmUWYvtHEz2A8K6wXvueR/6g==", - "requires": { - "big-integer": "^1.6.17", - "binary": "~0.3.0", - "bluebird": "~3.4.1", - "buffer-indexof-polyfill": "~1.0.0", - "duplexer2": "~0.1.4", - "fstream": "^1.0.12", - "graceful-fs": "^4.2.2", - "listenercount": "~1.0.1", - "readable-stream": "~2.3.6", - "setimmediate": "~1.0.4" - } - }, - "util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==" - }, - "wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" - } - } -}