mirror of https://github.com/louislam/uptime-kuma
				
				
				
			chore(deps): upgrade http/https/socks proxy agents (#5548)
Co-authored-by: Frank Elsinga <frank@elsinga.de>pull/5572/head^2
							parent
							
								
									66908c7055
								
							
						
					
					
						commit
						20820f5a5a
					
				| 
						 | 
				
			
			@ -37,8 +37,8 @@
 | 
			
		|||
                "html-escaper": "^3.0.3",
 | 
			
		||||
                "http-cookie-agent": "~5.0.4",
 | 
			
		||||
                "http-graceful-shutdown": "~3.1.7",
 | 
			
		||||
                "http-proxy-agent": "~5.0.0",
 | 
			
		||||
                "https-proxy-agent": "~5.0.1",
 | 
			
		||||
                "http-proxy-agent": "~7.0.2",
 | 
			
		||||
                "https-proxy-agent": "~7.0.6",
 | 
			
		||||
                "iconv-lite": "~0.6.3",
 | 
			
		||||
                "isomorphic-ws": "^5.0.0",
 | 
			
		||||
                "jsesc": "~3.0.2",
 | 
			
		||||
| 
						 | 
				
			
			@ -77,7 +77,7 @@
 | 
			
		|||
                "semver": "~7.5.4",
 | 
			
		||||
                "socket.io": "~4.8.0",
 | 
			
		||||
                "socket.io-client": "~4.8.0",
 | 
			
		||||
                "socks-proxy-agent": "6.1.1",
 | 
			
		||||
                "socks-proxy-agent": "~8.0.5",
 | 
			
		||||
                "tar": "~6.2.1",
 | 
			
		||||
                "tcp-ping": "~0.1.1",
 | 
			
		||||
                "thirty-two": "~1.0.2",
 | 
			
		||||
| 
						 | 
				
			
			@ -1052,32 +1052,6 @@
 | 
			
		|||
                "node": ">=18.0.0"
 | 
			
		||||
            }
 | 
			
		||||
        },
 | 
			
		||||
        "node_modules/@azure/core-rest-pipeline/node_modules/http-proxy-agent": {
 | 
			
		||||
            "version": "7.0.2",
 | 
			
		||||
            "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-7.0.2.tgz",
 | 
			
		||||
            "integrity": "sha512-T1gkAiYYDWYx3V5Bmyu7HcfcvL7mUrTWiM6yOfa3PIphViJ/gFPbvidQ+veqSOHci/PxBcDabeUNCzpOODJZig==",
 | 
			
		||||
            "license": "MIT",
 | 
			
		||||
            "dependencies": {
 | 
			
		||||
                "agent-base": "^7.1.0",
 | 
			
		||||
                "debug": "^4.3.4"
 | 
			
		||||
            },
 | 
			
		||||
            "engines": {
 | 
			
		||||
                "node": ">= 14"
 | 
			
		||||
            }
 | 
			
		||||
        },
 | 
			
		||||
        "node_modules/@azure/core-rest-pipeline/node_modules/https-proxy-agent": {
 | 
			
		||||
            "version": "7.0.6",
 | 
			
		||||
            "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.6.tgz",
 | 
			
		||||
            "integrity": "sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw==",
 | 
			
		||||
            "license": "MIT",
 | 
			
		||||
            "dependencies": {
 | 
			
		||||
                "agent-base": "^7.1.2",
 | 
			
		||||
                "debug": "4"
 | 
			
		||||
            },
 | 
			
		||||
            "engines": {
 | 
			
		||||
                "node": ">= 14"
 | 
			
		||||
            }
 | 
			
		||||
        },
 | 
			
		||||
        "node_modules/@azure/core-tracing": {
 | 
			
		||||
            "version": "1.2.0",
 | 
			
		||||
            "resolved": "https://registry.npmjs.org/@azure/core-tracing/-/core-tracing-1.2.0.tgz",
 | 
			
		||||
| 
						 | 
				
			
			@ -2827,6 +2801,29 @@
 | 
			
		|||
                "node-pre-gyp": "bin/node-pre-gyp"
 | 
			
		||||
            }
 | 
			
		||||
        },
 | 
			
		||||
        "node_modules/@mapbox/node-pre-gyp/node_modules/agent-base": {
 | 
			
		||||
            "version": "6.0.2",
 | 
			
		||||
            "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz",
 | 
			
		||||
            "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==",
 | 
			
		||||
            "dependencies": {
 | 
			
		||||
                "debug": "4"
 | 
			
		||||
            },
 | 
			
		||||
            "engines": {
 | 
			
		||||
                "node": ">= 6.0.0"
 | 
			
		||||
            }
 | 
			
		||||
        },
 | 
			
		||||
        "node_modules/@mapbox/node-pre-gyp/node_modules/https-proxy-agent": {
 | 
			
		||||
            "version": "5.0.1",
 | 
			
		||||
            "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz",
 | 
			
		||||
            "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==",
 | 
			
		||||
            "dependencies": {
 | 
			
		||||
                "agent-base": "6",
 | 
			
		||||
                "debug": "4"
 | 
			
		||||
            },
 | 
			
		||||
            "engines": {
 | 
			
		||||
                "node": ">= 6"
 | 
			
		||||
            }
 | 
			
		||||
        },
 | 
			
		||||
        "node_modules/@mongodb-js/saslprep": {
 | 
			
		||||
            "version": "1.1.9",
 | 
			
		||||
            "resolved": "https://registry.npmjs.org/@mongodb-js/saslprep/-/saslprep-1.1.9.tgz",
 | 
			
		||||
| 
						 | 
				
			
			@ -4270,15 +4267,6 @@
 | 
			
		|||
                "testcontainers": "^10.16.0"
 | 
			
		||||
            }
 | 
			
		||||
        },
 | 
			
		||||
        "node_modules/@tootallnate/once": {
 | 
			
		||||
            "version": "2.0.0",
 | 
			
		||||
            "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-2.0.0.tgz",
 | 
			
		||||
            "integrity": "sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==",
 | 
			
		||||
            "license": "MIT",
 | 
			
		||||
            "engines": {
 | 
			
		||||
                "node": ">= 10"
 | 
			
		||||
            }
 | 
			
		||||
        },
 | 
			
		||||
        "node_modules/@types/accepts": {
 | 
			
		||||
            "version": "1.3.7",
 | 
			
		||||
            "resolved": "https://registry.npmjs.org/@types/accepts/-/accepts-1.3.7.tgz",
 | 
			
		||||
| 
						 | 
				
			
			@ -10117,29 +10105,15 @@
 | 
			
		|||
            }
 | 
			
		||||
        },
 | 
			
		||||
        "node_modules/http-proxy-agent": {
 | 
			
		||||
            "version": "5.0.0",
 | 
			
		||||
            "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz",
 | 
			
		||||
            "integrity": "sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==",
 | 
			
		||||
            "license": "MIT",
 | 
			
		||||
            "version": "7.0.2",
 | 
			
		||||
            "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-7.0.2.tgz",
 | 
			
		||||
            "integrity": "sha512-T1gkAiYYDWYx3V5Bmyu7HcfcvL7mUrTWiM6yOfa3PIphViJ/gFPbvidQ+veqSOHci/PxBcDabeUNCzpOODJZig==",
 | 
			
		||||
            "dependencies": {
 | 
			
		||||
                "@tootallnate/once": "2",
 | 
			
		||||
                "agent-base": "6",
 | 
			
		||||
                "debug": "4"
 | 
			
		||||
                "agent-base": "^7.1.0",
 | 
			
		||||
                "debug": "^4.3.4"
 | 
			
		||||
            },
 | 
			
		||||
            "engines": {
 | 
			
		||||
                "node": ">= 6"
 | 
			
		||||
            }
 | 
			
		||||
        },
 | 
			
		||||
        "node_modules/http-proxy-agent/node_modules/agent-base": {
 | 
			
		||||
            "version": "6.0.2",
 | 
			
		||||
            "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz",
 | 
			
		||||
            "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==",
 | 
			
		||||
            "license": "MIT",
 | 
			
		||||
            "dependencies": {
 | 
			
		||||
                "debug": "4"
 | 
			
		||||
            },
 | 
			
		||||
            "engines": {
 | 
			
		||||
                "node": ">= 6.0.0"
 | 
			
		||||
                "node": ">= 14"
 | 
			
		||||
            }
 | 
			
		||||
        },
 | 
			
		||||
        "node_modules/http2-wrapper": {
 | 
			
		||||
| 
						 | 
				
			
			@ -10156,28 +10130,15 @@
 | 
			
		|||
            }
 | 
			
		||||
        },
 | 
			
		||||
        "node_modules/https-proxy-agent": {
 | 
			
		||||
            "version": "5.0.1",
 | 
			
		||||
            "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz",
 | 
			
		||||
            "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==",
 | 
			
		||||
            "license": "MIT",
 | 
			
		||||
            "version": "7.0.6",
 | 
			
		||||
            "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.6.tgz",
 | 
			
		||||
            "integrity": "sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw==",
 | 
			
		||||
            "dependencies": {
 | 
			
		||||
                "agent-base": "6",
 | 
			
		||||
                "agent-base": "^7.1.2",
 | 
			
		||||
                "debug": "4"
 | 
			
		||||
            },
 | 
			
		||||
            "engines": {
 | 
			
		||||
                "node": ">= 6"
 | 
			
		||||
            }
 | 
			
		||||
        },
 | 
			
		||||
        "node_modules/https-proxy-agent/node_modules/agent-base": {
 | 
			
		||||
            "version": "6.0.2",
 | 
			
		||||
            "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz",
 | 
			
		||||
            "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==",
 | 
			
		||||
            "license": "MIT",
 | 
			
		||||
            "dependencies": {
 | 
			
		||||
                "debug": "4"
 | 
			
		||||
            },
 | 
			
		||||
            "engines": {
 | 
			
		||||
                "node": ">= 6.0.0"
 | 
			
		||||
                "node": ">= 14"
 | 
			
		||||
            }
 | 
			
		||||
        },
 | 
			
		||||
        "node_modules/human-signals": {
 | 
			
		||||
| 
						 | 
				
			
			@ -11679,6 +11640,33 @@
 | 
			
		|||
                "node": ">= 6"
 | 
			
		||||
            }
 | 
			
		||||
        },
 | 
			
		||||
        "node_modules/make-fetch-happen/node_modules/https-proxy-agent": {
 | 
			
		||||
            "version": "5.0.1",
 | 
			
		||||
            "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz",
 | 
			
		||||
            "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==",
 | 
			
		||||
            "optional": true,
 | 
			
		||||
            "dependencies": {
 | 
			
		||||
                "agent-base": "6",
 | 
			
		||||
                "debug": "4"
 | 
			
		||||
            },
 | 
			
		||||
            "engines": {
 | 
			
		||||
                "node": ">= 6"
 | 
			
		||||
            }
 | 
			
		||||
        },
 | 
			
		||||
        "node_modules/make-fetch-happen/node_modules/socks-proxy-agent": {
 | 
			
		||||
            "version": "6.2.1",
 | 
			
		||||
            "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-6.2.1.tgz",
 | 
			
		||||
            "integrity": "sha512-a6KW9G+6B3nWZ1yB8G7pJwL3ggLy1uTzKAgCb7ttblwqdz9fMGJUuTy3uFzEP48FAs9FLILlmzDlE2JJhVQaXQ==",
 | 
			
		||||
            "optional": true,
 | 
			
		||||
            "dependencies": {
 | 
			
		||||
                "agent-base": "^6.0.2",
 | 
			
		||||
                "debug": "^4.3.3",
 | 
			
		||||
                "socks": "^2.6.2"
 | 
			
		||||
            },
 | 
			
		||||
            "engines": {
 | 
			
		||||
                "node": ">= 10"
 | 
			
		||||
            }
 | 
			
		||||
        },
 | 
			
		||||
        "node_modules/map-obj": {
 | 
			
		||||
            "version": "4.3.0",
 | 
			
		||||
            "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-4.3.0.tgz",
 | 
			
		||||
| 
						 | 
				
			
			@ -15261,29 +15249,16 @@
 | 
			
		|||
            }
 | 
			
		||||
        },
 | 
			
		||||
        "node_modules/socks-proxy-agent": {
 | 
			
		||||
            "version": "6.1.1",
 | 
			
		||||
            "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-6.1.1.tgz",
 | 
			
		||||
            "integrity": "sha512-t8J0kG3csjA4g6FTbsMOWws+7R7vuRC8aQ/wy3/1OWmsgwA68zs/+cExQ0koSitUDXqhufF/YJr9wtNMZHw5Ew==",
 | 
			
		||||
            "license": "MIT",
 | 
			
		||||
            "version": "8.0.5",
 | 
			
		||||
            "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-8.0.5.tgz",
 | 
			
		||||
            "integrity": "sha512-HehCEsotFqbPW9sJ8WVYB6UbmIMv7kUUORIF2Nncq4VQvBfNBLibW9YZR5dlYCSUhwcD628pRllm7n+E+YTzJw==",
 | 
			
		||||
            "dependencies": {
 | 
			
		||||
                "agent-base": "^6.0.2",
 | 
			
		||||
                "debug": "^4.3.1",
 | 
			
		||||
                "socks": "^2.6.1"
 | 
			
		||||
                "agent-base": "^7.1.2",
 | 
			
		||||
                "debug": "^4.3.4",
 | 
			
		||||
                "socks": "^2.8.3"
 | 
			
		||||
            },
 | 
			
		||||
            "engines": {
 | 
			
		||||
                "node": ">= 10"
 | 
			
		||||
            }
 | 
			
		||||
        },
 | 
			
		||||
        "node_modules/socks-proxy-agent/node_modules/agent-base": {
 | 
			
		||||
            "version": "6.0.2",
 | 
			
		||||
            "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz",
 | 
			
		||||
            "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==",
 | 
			
		||||
            "license": "MIT",
 | 
			
		||||
            "dependencies": {
 | 
			
		||||
                "debug": "4"
 | 
			
		||||
            },
 | 
			
		||||
            "engines": {
 | 
			
		||||
                "node": ">= 6.0.0"
 | 
			
		||||
                "node": ">= 14"
 | 
			
		||||
            }
 | 
			
		||||
        },
 | 
			
		||||
        "node_modules/sortablejs": {
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -95,8 +95,8 @@
 | 
			
		|||
        "html-escaper": "^3.0.3",
 | 
			
		||||
        "http-cookie-agent": "~5.0.4",
 | 
			
		||||
        "http-graceful-shutdown": "~3.1.7",
 | 
			
		||||
        "http-proxy-agent": "~5.0.0",
 | 
			
		||||
        "https-proxy-agent": "~5.0.1",
 | 
			
		||||
        "http-proxy-agent": "~7.0.2",
 | 
			
		||||
        "https-proxy-agent": "~7.0.6",
 | 
			
		||||
        "iconv-lite": "~0.6.3",
 | 
			
		||||
        "isomorphic-ws": "^5.0.0",
 | 
			
		||||
        "jsesc": "~3.0.2",
 | 
			
		||||
| 
						 | 
				
			
			@ -135,7 +135,7 @@
 | 
			
		|||
        "semver": "~7.5.4",
 | 
			
		||||
        "socket.io": "~4.8.0",
 | 
			
		||||
        "socket.io-client": "~4.8.0",
 | 
			
		||||
        "socks-proxy-agent": "6.1.1",
 | 
			
		||||
        "socks-proxy-agent": "~8.0.5",
 | 
			
		||||
        "tar": "~6.2.1",
 | 
			
		||||
        "tcp-ping": "~0.1.1",
 | 
			
		||||
        "thirty-two": "~1.0.2",
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,7 +1,7 @@
 | 
			
		|||
const { R } = require("redbean-node");
 | 
			
		||||
const HttpProxyAgent = require("http-proxy-agent");
 | 
			
		||||
const HttpsProxyAgent = require("https-proxy-agent");
 | 
			
		||||
const SocksProxyAgent = require("socks-proxy-agent");
 | 
			
		||||
const { HttpProxyAgent } = require("http-proxy-agent");
 | 
			
		||||
const { HttpsProxyAgent } = require("https-proxy-agent");
 | 
			
		||||
const { SocksProxyAgent } = require("socks-proxy-agent");
 | 
			
		||||
const { debug } = require("../src/util");
 | 
			
		||||
const { UptimeKumaServer } = require("./uptime-kuma-server");
 | 
			
		||||
const { CookieJar } = require("tough-cookie");
 | 
			
		||||
| 
						 | 
				
			
			@ -100,17 +100,17 @@ class Proxy {
 | 
			
		|||
        let jar = new CookieJar();
 | 
			
		||||
 | 
			
		||||
        const proxyOptions = {
 | 
			
		||||
            protocol: proxy.protocol,
 | 
			
		||||
            host: proxy.host,
 | 
			
		||||
            port: proxy.port,
 | 
			
		||||
            cookies: { jar },
 | 
			
		||||
        };
 | 
			
		||||
 | 
			
		||||
        const proxyUrl = new URL(`${proxy.protocol}://${proxy.host}:${proxy.port}`);
 | 
			
		||||
 | 
			
		||||
        if (proxy.auth) {
 | 
			
		||||
            proxyOptions.auth = `${proxy.username}:${proxy.password}`;
 | 
			
		||||
            proxyUrl.username = proxy.username;
 | 
			
		||||
            proxyUrl.password = proxy.password;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        debug(`Proxy Options: ${JSON.stringify(proxyOptions)}`);
 | 
			
		||||
        debug(`Proxy URL: ${proxyUrl.toString()}`);
 | 
			
		||||
        debug(`HTTP Agent Options: ${JSON.stringify(httpAgentOptions)}`);
 | 
			
		||||
        debug(`HTTPS Agent Options: ${JSON.stringify(httpsAgentOptions)}`);
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -122,15 +122,15 @@ class Proxy {
 | 
			
		|||
                // eslint-disable-next-line no-case-declarations
 | 
			
		||||
                const HttpsCookieProxyAgent = createCookieAgent(HttpsProxyAgent);
 | 
			
		||||
 | 
			
		||||
                httpAgent = new HttpCookieProxyAgent({
 | 
			
		||||
                    ...httpAgentOptions || {},
 | 
			
		||||
                httpAgent = new HttpCookieProxyAgent(proxyUrl.toString(), {
 | 
			
		||||
                    ...(httpAgentOptions || {}),
 | 
			
		||||
                    ...proxyOptions,
 | 
			
		||||
                });
 | 
			
		||||
                httpsAgent = new HttpsCookieProxyAgent(proxyUrl.toString(), {
 | 
			
		||||
                    ...(httpsAgentOptions || {}),
 | 
			
		||||
                    ...proxyOptions,
 | 
			
		||||
                });
 | 
			
		||||
 | 
			
		||||
                httpsAgent = new HttpsCookieProxyAgent({
 | 
			
		||||
                    ...httpsAgentOptions || {},
 | 
			
		||||
                    ...proxyOptions,
 | 
			
		||||
                });
 | 
			
		||||
                break;
 | 
			
		||||
            case "socks":
 | 
			
		||||
            case "socks5":
 | 
			
		||||
| 
						 | 
				
			
			@ -138,10 +138,9 @@ class Proxy {
 | 
			
		|||
            case "socks4":
 | 
			
		||||
                // eslint-disable-next-line no-case-declarations
 | 
			
		||||
                const SocksCookieProxyAgent = createCookieAgent(SocksProxyAgent);
 | 
			
		||||
                agent = new SocksCookieProxyAgent({
 | 
			
		||||
                agent = new SocksCookieProxyAgent(proxyUrl.toString(), {
 | 
			
		||||
                    ...httpAgentOptions,
 | 
			
		||||
                    ...httpsAgentOptions,
 | 
			
		||||
                    ...proxyOptions,
 | 
			
		||||
                    tls: {
 | 
			
		||||
                        rejectUnauthorized: httpsAgentOptions.rejectUnauthorized,
 | 
			
		||||
                    },
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue