socket 1.1.109 → 1.1.111
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +10 -0
- package/dist/constants.js +4 -4
- package/dist/constants.js.map +1 -1
- package/dist/tsconfig.dts.tsbuildinfo +1 -1
- package/dist/types/utils/api.d.mts +4 -3
- package/dist/types/utils/api.d.mts.map +1 -1
- package/dist/types/utils/sdk.d.mts.map +1 -1
- package/dist/utils.js +44 -32
- package/dist/utils.js.map +1 -1
- package/package.json +2 -2
|
@@ -3,9 +3,10 @@ import type { Spinner } from '@socketsecurity/registry/lib/spinner';
|
|
|
3
3
|
import type { SocketSdkOperations, SocketSdkResult, SocketSdkSuccessResult } from '@socketsecurity/sdk';
|
|
4
4
|
// All outbound API requests use node:https.request rather than global fetch.
|
|
5
5
|
// This ensures no body timeout is applied — large streaming ND-JSON responses
|
|
6
|
-
// (e.g. full scan results) can transfer without a hard deadline.
|
|
7
|
-
//
|
|
8
|
-
//
|
|
6
|
+
// (e.g. full scan results) can transfer without a hard deadline. An explicit
|
|
7
|
+
// HttpsAgent is always passed (carrying extra CA certificates when
|
|
8
|
+
// SSL_CERT_FILE is configured) so requests do not inherit Node's global-agent
|
|
9
|
+
// keepAlive socket timeout.
|
|
9
10
|
export type ApiFetchInit = {
|
|
10
11
|
body?: string | undefined;
|
|
11
12
|
headers?: Record<string, string> | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api.d.mts","sourceRoot":"","sources":["../../../src/utils/api.mts"],"names":[],"mappings":"AA4CA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AAC3C,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sCAAsC,CAAA;AACnE,OAAO,KAAK,EAEV,mBAAmB,EACnB,eAAe,EACf,sBAAsB,EACvB,MAAM,qBAAqB,CAAA;
|
|
1
|
+
{"version":3,"file":"api.d.mts","sourceRoot":"","sources":["../../../src/utils/api.mts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sdk.d.mts","sourceRoot":"","sources":["../../../src/utils/sdk.mts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"sdk.d.mts","sourceRoot":"","sources":["../../../src/utils/sdk.mts"],"names":[],"mappings":"AAuCA,OAAO,EAAE,SAAS,EAA8B,MAAM,qBAAqB,CAAA;AAW3E,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AAO3C,4DAA4D;AAC5D,wBAAgB,oBAAoB,IAAI,MAAM,GAAG,SAAS,CAKzD;AAED,4DAA4D;AAC5D,wBAAgB,kBAAkB,IAAI,MAAM,GAAG,SAAS,CAKvD;AAMD,4EAA4E;AAC5E,+EAA+E;AAC/E,+EAA+E;AAC/E,6EAA6E;AAC7E,qDAAqD;AACrD,wBAAgB,eAAe,IAAI,MAAM,EAAE,GAAG,SAAS,CAwBtD;AAKD,wBAAgB,kBAAkB,IAAI,MAAM,GAAG,SAAS,CAavD;AAED,wBAAgB,iBAAiB,IAAI,MAAM,CAM1C;AAED,wBAAgB,qBAAqB,IAAI,MAAM,CAQ9C;AAED,wBAAgB,kBAAkB,IAAI,OAAO,CAE5C;AAED,MAAM,MAAM,eAAe,GAAG;IAC5B,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC/B,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC7B,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CAC9B,CAAA;AAED,wBAAsB,QAAQ,CAC5B,OAAO,CAAC,EAAE,eAAe,GAAG,SAAS,GACpC,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAsI7B"}
|
package/dist/utils.js
CHANGED
|
@@ -34,6 +34,7 @@ var globs = require('../external/@socketsecurity/registry/lib/globs');
|
|
|
34
34
|
var streams = require('../external/@socketsecurity/registry/lib/streams');
|
|
35
35
|
var promises = require('node:timers/promises');
|
|
36
36
|
var require$$1 = require('node:util');
|
|
37
|
+
var require$$2 = require('node:http');
|
|
37
38
|
var node_tls = require('node:tls');
|
|
38
39
|
var process$1 = require('node:process');
|
|
39
40
|
var require$$0 = require('node:crypto');
|
|
@@ -1921,27 +1922,34 @@ async function setupSdk(options) {
|
|
|
1921
1922
|
|
|
1922
1923
|
// Usage of HttpProxyAgent vs. HttpsProxyAgent based on the chart at:
|
|
1923
1924
|
// https://github.com/delvedor/hpagent?tab=readme-ov-file#usage
|
|
1924
|
-
const
|
|
1925
|
+
const isHttp = apiBaseUrl?.startsWith('http:');
|
|
1926
|
+
const ProxyAgent = isHttp ? vendor.HttpProxyAgent : vendor.HttpsProxyAgent;
|
|
1925
1927
|
|
|
1926
1928
|
// Load extra CA certificates for SSL_CERT_FILE support when
|
|
1927
1929
|
// NODE_EXTRA_CA_CERTS was not set at process startup.
|
|
1928
1930
|
const ca = getExtraCaCerts();
|
|
1931
|
+
|
|
1932
|
+
// Always pass an explicit agent. Node >=19's global agent enables keepAlive
|
|
1933
|
+
// with a 5s socket timeout that Node applies as a per-socket inactivity
|
|
1934
|
+
// timeout. A request made without an explicit agent inherits it and is torn
|
|
1935
|
+
// down after 5s of socket inactivity, even when SOCKET_CLI_API_TIMEOUT is
|
|
1936
|
+
// unset. This breaks slow endpoints like upload-manifest-files, which streams
|
|
1937
|
+
// a chunked multipart body while the server parses auth/multipart before
|
|
1938
|
+
// sending any response byte. A fresh Agent carries no timeout, so a request
|
|
1939
|
+
// is bounded only by a real SOCKET_CLI_API_TIMEOUT (applied below via the
|
|
1940
|
+
// SDK's timeout option) or until interrupted.
|
|
1929
1941
|
const sdkOptions = {
|
|
1930
|
-
|
|
1931
|
-
|
|
1932
|
-
|
|
1933
|
-
|
|
1934
|
-
|
|
1935
|
-
|
|
1936
|
-
|
|
1937
|
-
|
|
1938
|
-
|
|
1939
|
-
|
|
1940
|
-
} :
|
|
1941
|
-
agent: new require$$3.Agent({
|
|
1942
|
-
ca
|
|
1943
|
-
})
|
|
1944
|
-
} : {}),
|
|
1942
|
+
agent: apiProxy ? new ProxyAgent({
|
|
1943
|
+
proxy: apiProxy,
|
|
1944
|
+
...(ca ? {
|
|
1945
|
+
ca,
|
|
1946
|
+
proxyConnectOptions: {
|
|
1947
|
+
ca
|
|
1948
|
+
}
|
|
1949
|
+
} : {})
|
|
1950
|
+
}) : isHttp ? new require$$2.Agent() : new require$$3.Agent(ca ? {
|
|
1951
|
+
ca
|
|
1952
|
+
} : undefined),
|
|
1945
1953
|
...(apiBaseUrl ? {
|
|
1946
1954
|
baseUrl: apiBaseUrl
|
|
1947
1955
|
} : {}),
|
|
@@ -2034,32 +2042,36 @@ async function setupSdk(options) {
|
|
|
2034
2042
|
const MAX_REDIRECTS = 20;
|
|
2035
2043
|
const NO_ERROR_MESSAGE = 'No error message returned';
|
|
2036
2044
|
|
|
2037
|
-
// Cached HTTPS agent for
|
|
2045
|
+
// Cached HTTPS agent for direct API calls. Undefined only until the first
|
|
2046
|
+
// getHttpsAgent() call lazily creates it.
|
|
2038
2047
|
let _httpsAgent;
|
|
2039
|
-
let _httpsAgentResolved = false;
|
|
2040
2048
|
|
|
2041
|
-
// Returns an HTTPS agent
|
|
2042
|
-
// SSL_CERT_FILE is set but NODE_EXTRA_CA_CERTS is not.
|
|
2049
|
+
// Returns an explicit HTTPS agent for direct API calls, carrying extra CA
|
|
2050
|
+
// certificates when SSL_CERT_FILE is set but NODE_EXTRA_CA_CERTS is not. An
|
|
2051
|
+
// explicit agent is always returned. Node >=19's global agent enables keepAlive
|
|
2052
|
+
// with a 5s socket timeout that Node applies as a per-socket inactivity
|
|
2053
|
+
// timeout. A request made without an explicit agent inherits it and is torn
|
|
2054
|
+
// down after 5s of socket inactivity, prematurely dropping slow or idle-gapped
|
|
2055
|
+
// requests (e.g. streaming full-scan responses, large downloads) even when no
|
|
2056
|
+
// timeout was requested. A fresh Agent carries no timeout.
|
|
2043
2057
|
function getHttpsAgent() {
|
|
2044
|
-
if (
|
|
2058
|
+
if (_httpsAgent) {
|
|
2045
2059
|
return _httpsAgent;
|
|
2046
2060
|
}
|
|
2047
|
-
_httpsAgentResolved = true;
|
|
2048
2061
|
const ca = getExtraCaCerts();
|
|
2049
|
-
|
|
2050
|
-
return undefined;
|
|
2051
|
-
}
|
|
2052
|
-
_httpsAgent = new require$$3.Agent({
|
|
2062
|
+
const agent = ca ? new require$$3.Agent({
|
|
2053
2063
|
ca
|
|
2054
|
-
});
|
|
2055
|
-
|
|
2064
|
+
}) : new require$$3.Agent();
|
|
2065
|
+
_httpsAgent = agent;
|
|
2066
|
+
return agent;
|
|
2056
2067
|
}
|
|
2057
2068
|
|
|
2058
2069
|
// All outbound API requests use node:https.request rather than global fetch.
|
|
2059
2070
|
// This ensures no body timeout is applied — large streaming ND-JSON responses
|
|
2060
|
-
// (e.g. full scan results) can transfer without a hard deadline.
|
|
2061
|
-
//
|
|
2062
|
-
//
|
|
2071
|
+
// (e.g. full scan results) can transfer without a hard deadline. An explicit
|
|
2072
|
+
// HttpsAgent is always passed (carrying extra CA certificates when
|
|
2073
|
+
// SSL_CERT_FILE is configured) so requests do not inherit Node's global-agent
|
|
2074
|
+
// keepAlive socket timeout.
|
|
2063
2075
|
|
|
2064
2076
|
// Internal httpsRequest-based fetch with redirect support.
|
|
2065
2077
|
function _httpsRequestFetch(url, init, agent, redirectCount) {
|
|
@@ -8249,5 +8261,5 @@ exports.updateConfigValue = updateConfigValue;
|
|
|
8249
8261
|
exports.walkNestedMap = walkNestedMap;
|
|
8250
8262
|
exports.webLink = webLink;
|
|
8251
8263
|
exports.writeSocketJson = writeSocketJson;
|
|
8252
|
-
//# debugId=
|
|
8264
|
+
//# debugId=8907eca2-6921-4ecf-8a5f-ba72849ca53a
|
|
8253
8265
|
//# sourceMappingURL=utils.js.map
|