summaryrefslogtreecommitdiff
path: root/packages/backend/src/core/HttpRequestService.ts
diff options
context:
space:
mode:
authorrectcoordsystem <37621004+rectcoordsystem@users.noreply.github.com>2024-11-13 03:06:22 +0900
committerJulia Johannesen <julia@insertdomain.name>2024-11-20 19:17:25 -0500
commit663c06be00d5b05d6c3e96559b170190805f38ed (patch)
treee4ce2aab9ca12a0a1e1990272c63697b85fc6e67 /packages/backend/src/core/HttpRequestService.ts
parentfix(backend): allow accessing private IP when testing (diff)
downloadsharkey-663c06be00d5b05d6c3e96559b170190805f38ed.tar.gz
sharkey-663c06be00d5b05d6c3e96559b170190805f38ed.tar.bz2
sharkey-663c06be00d5b05d6c3e96559b170190805f38ed.zip
Apply suggestions from code review
Co-authored-by: anatawa12 <anatawa12@icloud.com>
Diffstat (limited to 'packages/backend/src/core/HttpRequestService.ts')
-rw-r--r--packages/backend/src/core/HttpRequestService.ts34
1 files changed, 17 insertions, 17 deletions
diff --git a/packages/backend/src/core/HttpRequestService.ts b/packages/backend/src/core/HttpRequestService.ts
index 8c5e3bdb91..0c8b5b4ef4 100644
--- a/packages/backend/src/core/HttpRequestService.ts
+++ b/packages/backend/src/core/HttpRequestService.ts
@@ -26,30 +26,33 @@ export type HttpRequestSendOptions = {
validators?: ((res: Response) => void)[];
};
-@Injectable()
+declare module 'node:http' {
+ interface Agent {
+ createConnection(options: net.NetConnectOpts, callback?: (err: unknown, stream: net.Socket) => void): net.Socket;
+ }
+}
+
class HttpRequestServiceAgent extends http.Agent {
constructor(
- @Inject(DI.config)
private config: Config,
-
- options?: Object
+ options?: http.AgentOptions,
) {
super(options);
}
@bindThis
- public createConnection(options: Object, callback?: Function): net.Socket {
+ public createConnection(options: net.NetConnectOpts, callback?: (err: unknown, stream: net.Socket) => void): net.Socket {
const socket = super.createConnection(options, callback)
- .on('connect', ()=>{
- const address = socket.remoteAddress;
- if (process.env.NODE_ENV === 'production') {
- if (address && ipaddr.isValid(address)) {
- if (this.isPrivateIp(address)) {
- socket.destroy(new Error(`Blocked address: ${address}`));
+ .on('connect', () => {
+ const address = socket.remoteAddress;
+ if (process.env.NODE_ENV === 'production') {
+ if (address && ipaddr.isValid(address)) {
+ if (this.isPrivateIp(address)) {
+ socket.destroy(new Error(`Blocked address: ${address}`));
+ }
}
}
- }
- });
+ });
return socket;
};
@@ -68,13 +71,10 @@ class HttpRequestServiceAgent extends http.Agent {
}
}
-@Injectable()
class HttpsRequestServiceAgent extends https.Agent {
constructor(
- @Inject(DI.config)
private config: Config,
-
- options?: Object
+ options?: https.AgentOptions,
) {
super(options);
}