Skip to content

Commit 5dd883b

Browse files
neos implementation
1 parent 4ac3f97 commit 5dd883b

11 files changed

+314
-154
lines changed

Diff for: Replay.js

+1-1
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Diff for: YGOProMessages.js

+14-7
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Diff for: YGOProMessages.ts

+13-7
Original file line numberDiff line numberDiff line change
@@ -196,16 +196,22 @@ export class YGOProMessagesHelper {
196196
return sendBuffer;
197197
}
198198

199-
sendMessage(socket: net.Socket, protostr: string, info?: string | Buffer | any) {
200-
const sendBuffer = this.prepareMessage(protostr, info);
201-
socket.write(sendBuffer);
199+
send(socket: net.Socket | WebSocket, buffer: Buffer) {
200+
return new Promise<Error | undefined>(done => {
201+
if (socket['isWs']) {
202+
const ws = socket as WebSocket;
203+
// @ts-ignore
204+
ws.send(buffer, {}, done);
205+
} else {
206+
const sock = socket as net.Socket;
207+
sock.write(buffer, done);
208+
}
209+
})
202210
}
203211

204-
sendMessageAsync(socket: net.Socket, protostr: string, info?: string | Buffer | any): Promise<Error> {
212+
sendMessage(socket: net.Socket | WebSocket, protostr: string, info?: string | Buffer | any): Promise<Error> {
205213
const sendBuffer = this.prepareMessage(protostr, info);
206-
return new Promise(done => {
207-
socket.write(sendBuffer, done);
208-
});
214+
return this.send(socket, sendBuffer);
209215
}
210216

211217
addHandler(protostr: string, handler: (buffer: Buffer, info: any, datas: Buffer[], params: any) => Promise<boolean | string>, synchronous: boolean, priority: number) {

Diff for: data/default_config.json

+9
Original file line numberDiff line numberDiff line change
@@ -196,6 +196,15 @@
196196
"banCount": 0,
197197
"ttl": 600
198198
},
199+
"neos": {
200+
"enabled": false,
201+
"port": 7977,
202+
"trusted_proxies": [
203+
"127.0.0.1/8",
204+
"::1/128"
205+
],
206+
"ip_header": "x-forwarded-for"
207+
},
199208
"test_mode": {
200209
"watch_public_hand": false,
201210
"no_connect_count_limit": false,

Diff for: package-lock.json

+69
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Diff for: package.json

+2
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
"deepmerge": "^4.2.2",
1818
"formidable": "^1.2.6",
1919
"geoip-country-lite": "^1.0.0",
20+
"ip6addr": "^0.2.5",
2021
"jszip": "^3.5.0",
2122
"load-json-file": "^6.2.0",
2223
"lzma": "^2.3.2",
@@ -46,6 +47,7 @@
4647
},
4748
"devDependencies": {
4849
"@types/bunyan": "^1.8.8",
50+
"@types/ip6addr": "^0.2.3",
4951
"@types/node": "^17.0.19",
5052
"@types/underscore": "^1.11.4",
5153
"@types/ws": "^8.5.3",

Diff for: ygopro-auth.js

+1-1
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)