@jsprismarine/raknet 0.1.0-rc.49 → 0.1.0-rc.50
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/dist/ClientSocket.d.ts +2 -0
- package/dist/ClientSocket.d.ts.map +1 -0
- package/dist/ClientSocket.js +3 -0
- package/dist/ClientSocket.js.map +1 -0
- package/dist/RakNet.d.ts +14 -8
- package/dist/RakNet.d.ts.map +1 -1
- package/dist/RakNet.js +14 -36
- package/dist/RakNet.js.map +1 -1
- package/dist/ServerSocket.d.ts +48 -0
- package/dist/ServerSocket.d.ts.map +1 -0
- package/dist/ServerSocket.js +129 -0
- package/dist/ServerSocket.js.map +1 -0
- package/dist/Session.d.ts +75 -0
- package/dist/Session.d.ts.map +1 -0
- package/dist/Session.js +408 -0
- package/dist/Session.js.map +1 -0
- package/dist/protocol/ACK.d.ts +2 -2
- package/dist/protocol/ACK.d.ts.map +1 -1
- package/dist/protocol/ACK.js +4 -10
- package/dist/protocol/ACK.js.map +1 -1
- package/dist/protocol/AcknowledgePacket.d.ts +2 -4
- package/dist/protocol/AcknowledgePacket.d.ts.map +1 -1
- package/dist/protocol/AcknowledgePacket.js +52 -48
- package/dist/protocol/AcknowledgePacket.js.map +1 -1
- package/dist/protocol/BitFlags.d.ts +6 -6
- package/dist/protocol/BitFlags.d.ts.map +1 -1
- package/dist/protocol/BitFlags.js +8 -10
- package/dist/protocol/BitFlags.js.map +1 -1
- package/dist/protocol/DisconnectNotification.d.ts +1 -1
- package/dist/protocol/DisconnectNotification.d.ts.map +1 -1
- package/dist/protocol/DisconnectNotification.js +4 -10
- package/dist/protocol/DisconnectNotification.js.map +1 -1
- package/dist/protocol/Frame.d.ts +24 -0
- package/dist/protocol/Frame.d.ts.map +1 -0
- package/dist/protocol/Frame.js +103 -0
- package/dist/protocol/Frame.js.map +1 -0
- package/dist/protocol/FrameReliability.d.ts +12 -0
- package/dist/protocol/FrameReliability.d.ts.map +1 -0
- package/dist/protocol/FrameReliability.js +14 -0
- package/dist/protocol/FrameReliability.js.map +1 -0
- package/dist/protocol/FrameSet.d.ts +13 -0
- package/dist/protocol/FrameSet.d.ts.map +1 -0
- package/dist/protocol/FrameSet.js +34 -0
- package/dist/protocol/FrameSet.js.map +1 -0
- package/dist/protocol/MessageIdentifiers.d.ts +40 -0
- package/dist/protocol/MessageIdentifiers.d.ts.map +1 -0
- package/dist/protocol/MessageIdentifiers.js +42 -0
- package/dist/protocol/MessageIdentifiers.js.map +1 -0
- package/dist/protocol/NACK.d.ts +2 -2
- package/dist/protocol/NACK.d.ts.map +1 -1
- package/dist/protocol/NACK.js +4 -10
- package/dist/protocol/NACK.js.map +1 -1
- package/dist/protocol/OfflineHandler.d.ts +11 -0
- package/dist/protocol/OfflineHandler.d.ts.map +1 -0
- package/dist/protocol/OfflineHandler.js +103 -0
- package/dist/protocol/OfflineHandler.js.map +1 -0
- package/dist/protocol/OfflinePacket.d.ts +1 -1
- package/dist/protocol/OfflinePacket.d.ts.map +1 -1
- package/dist/protocol/OfflinePacket.js +7 -12
- package/dist/protocol/OfflinePacket.js.map +1 -1
- package/dist/protocol/Packet.d.ts +2 -2
- package/dist/protocol/Packet.d.ts.map +1 -1
- package/dist/protocol/Packet.js +25 -35
- package/dist/protocol/Packet.js.map +1 -1
- package/dist/protocol/PacketPool.d.ts +15 -0
- package/dist/protocol/PacketPool.d.ts.map +1 -0
- package/dist/protocol/PacketPool.js +29 -0
- package/dist/protocol/PacketPool.js.map +1 -0
- package/dist/protocol/Protocol.d.ts +25 -24
- package/dist/protocol/Protocol.d.ts.map +1 -1
- package/dist/protocol/Protocol.js +25 -52
- package/dist/protocol/Protocol.js.map +1 -1
- package/dist/protocol/{ConnectedPing.d.ts → connection/ConnectedPing.d.ts} +2 -2
- package/dist/protocol/connection/ConnectedPing.d.ts.map +1 -0
- package/dist/protocol/connection/ConnectedPing.js +15 -0
- package/dist/protocol/connection/ConnectedPing.js.map +1 -0
- package/dist/protocol/{ConnectedPong.d.ts → connection/ConnectedPong.d.ts} +1 -1
- package/dist/protocol/connection/ConnectedPong.d.ts.map +1 -0
- package/dist/protocol/connection/ConnectedPong.js +14 -0
- package/dist/protocol/connection/ConnectedPong.js.map +1 -0
- package/dist/protocol/{IncompatibleProtocolVersion.d.ts → connection/IncompatibleProtocolVersion.d.ts} +1 -1
- package/dist/protocol/connection/IncompatibleProtocolVersion.d.ts.map +1 -0
- package/dist/protocol/connection/IncompatibleProtocolVersion.js +15 -0
- package/dist/protocol/connection/IncompatibleProtocolVersion.js.map +1 -0
- package/dist/protocol/{NewIncomingConnection.d.ts → connection/NewIncomingConnection.d.ts} +3 -3
- package/dist/protocol/connection/NewIncomingConnection.d.ts.map +1 -0
- package/dist/protocol/{NewIncomingConnection.js → connection/NewIncomingConnection.js} +8 -11
- package/dist/protocol/connection/NewIncomingConnection.js.map +1 -0
- package/dist/protocol/{OpenConnectionReply1.d.ts → connection/OpenConnectionReply1.d.ts} +2 -2
- package/dist/protocol/connection/OpenConnectionReply1.d.ts.map +1 -0
- package/dist/protocol/connection/OpenConnectionReply1.js +22 -0
- package/dist/protocol/connection/OpenConnectionReply1.js.map +1 -0
- package/dist/protocol/connection/OpenConnectionReply2.d.ts +12 -0
- package/dist/protocol/connection/OpenConnectionReply2.d.ts.map +1 -0
- package/dist/protocol/connection/OpenConnectionReply2.js +25 -0
- package/dist/protocol/connection/OpenConnectionReply2.js.map +1 -0
- package/dist/protocol/{OpenConnectionRequest1.d.ts → connection/OpenConnectionRequest1.d.ts} +2 -2
- package/dist/protocol/connection/OpenConnectionRequest1.d.ts.map +1 -0
- package/dist/protocol/connection/OpenConnectionRequest1.js +20 -0
- package/dist/protocol/connection/OpenConnectionRequest1.js.map +1 -0
- package/dist/protocol/{OpenConnectionRequest2.d.ts → connection/OpenConnectionRequest2.d.ts} +3 -3
- package/dist/protocol/connection/OpenConnectionRequest2.d.ts.map +1 -0
- package/dist/protocol/connection/OpenConnectionRequest2.js +23 -0
- package/dist/protocol/connection/OpenConnectionRequest2.js.map +1 -0
- package/dist/protocol/{ConnectionRequest.d.ts → login/ConnectionRequest.d.ts} +2 -2
- package/dist/protocol/login/ConnectionRequest.d.ts.map +1 -0
- package/dist/protocol/login/ConnectionRequest.js +20 -0
- package/dist/protocol/login/ConnectionRequest.js.map +1 -0
- package/dist/protocol/{ConnectionRequestAccepted.d.ts → login/ConnectionRequestAccepted.d.ts} +3 -3
- package/dist/protocol/login/ConnectionRequestAccepted.d.ts.map +1 -0
- package/dist/protocol/login/ConnectionRequestAccepted.js +31 -0
- package/dist/protocol/login/ConnectionRequestAccepted.js.map +1 -0
- package/dist/protocol/offline/UnconnectedPing.d.ts +9 -0
- package/dist/protocol/offline/UnconnectedPing.d.ts.map +1 -0
- package/dist/protocol/offline/UnconnectedPing.js +20 -0
- package/dist/protocol/offline/UnconnectedPing.js.map +1 -0
- package/dist/protocol/offline/UnconnectedPong.d.ts +11 -0
- package/dist/protocol/offline/UnconnectedPong.d.ts.map +1 -0
- package/dist/protocol/offline/UnconnectedPong.js +23 -0
- package/dist/protocol/offline/UnconnectedPong.js.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -1494
- package/dist/utils/InetAddress.d.ts +1 -0
- package/dist/utils/InetAddress.d.ts.map +1 -1
- package/dist/utils/InetAddress.js +7 -4
- package/dist/utils/InetAddress.js.map +1 -1
- package/dist/utils/ServerName.js +9 -6
- package/dist/utils/ServerName.js.map +1 -1
- package/package.json +7 -4
- package/LICENSE +0 -373
- package/dist/Connection.d.ts +0 -77
- package/dist/Connection.d.ts.map +0 -1
- package/dist/Connection.js +0 -458
- package/dist/Connection.js.map +0 -1
- package/dist/Listener.d.ts +0 -38
- package/dist/Listener.d.ts.map +0 -1
- package/dist/Listener.js +0 -199
- package/dist/Listener.js.map +0 -1
- package/dist/RakNetListener.d.ts +0 -10
- package/dist/RakNetListener.d.ts.map +0 -1
- package/dist/RakNetListener.js +0 -3
- package/dist/RakNetListener.js.map +0 -1
- package/dist/protocol/ConnectedPing.d.ts.map +0 -1
- package/dist/protocol/ConnectedPing.js +0 -20
- package/dist/protocol/ConnectedPing.js.map +0 -1
- package/dist/protocol/ConnectedPong.d.ts.map +0 -1
- package/dist/protocol/ConnectedPong.js +0 -18
- package/dist/protocol/ConnectedPong.js.map +0 -1
- package/dist/protocol/ConnectionRequest.d.ts.map +0 -1
- package/dist/protocol/ConnectionRequest.js +0 -24
- package/dist/protocol/ConnectionRequest.js.map +0 -1
- package/dist/protocol/ConnectionRequestAccepted.d.ts.map +0 -1
- package/dist/protocol/ConnectionRequestAccepted.js +0 -34
- package/dist/protocol/ConnectionRequestAccepted.js.map +0 -1
- package/dist/protocol/DataPacket.d.ts +0 -13
- package/dist/protocol/DataPacket.d.ts.map +0 -1
- package/dist/protocol/DataPacket.js +0 -36
- package/dist/protocol/DataPacket.js.map +0 -1
- package/dist/protocol/EncapsulatedPacket.d.ts +0 -17
- package/dist/protocol/EncapsulatedPacket.d.ts.map +0 -1
- package/dist/protocol/EncapsulatedPacket.js +0 -87
- package/dist/protocol/EncapsulatedPacket.js.map +0 -1
- package/dist/protocol/Identifiers.d.ts +0 -20
- package/dist/protocol/Identifiers.d.ts.map +0 -1
- package/dist/protocol/Identifiers.js +0 -22
- package/dist/protocol/Identifiers.js.map +0 -1
- package/dist/protocol/IncompatibleProtocolVersion.d.ts.map +0 -1
- package/dist/protocol/IncompatibleProtocolVersion.js +0 -19
- package/dist/protocol/IncompatibleProtocolVersion.js.map +0 -1
- package/dist/protocol/NewIncomingConnection.d.ts.map +0 -1
- package/dist/protocol/NewIncomingConnection.js.map +0 -1
- package/dist/protocol/OpenConnectionReply1.d.ts.map +0 -1
- package/dist/protocol/OpenConnectionReply1.js +0 -26
- package/dist/protocol/OpenConnectionReply1.js.map +0 -1
- package/dist/protocol/OpenConnectionReply2.d.ts +0 -12
- package/dist/protocol/OpenConnectionReply2.d.ts.map +0 -1
- package/dist/protocol/OpenConnectionReply2.js +0 -28
- package/dist/protocol/OpenConnectionReply2.js.map +0 -1
- package/dist/protocol/OpenConnectionRequest1.d.ts.map +0 -1
- package/dist/protocol/OpenConnectionRequest1.js +0 -26
- package/dist/protocol/OpenConnectionRequest1.js.map +0 -1
- package/dist/protocol/OpenConnectionRequest2.d.ts.map +0 -1
- package/dist/protocol/OpenConnectionRequest2.js +0 -26
- package/dist/protocol/OpenConnectionRequest2.js.map +0 -1
- package/dist/protocol/ReliabilityLayer.d.ts +0 -17
- package/dist/protocol/ReliabilityLayer.d.ts.map +0 -1
- package/dist/protocol/ReliabilityLayer.js +0 -55
- package/dist/protocol/ReliabilityLayer.js.map +0 -1
- package/dist/protocol/UnconnectedPing.d.ts +0 -10
- package/dist/protocol/UnconnectedPing.d.ts.map +0 -1
- package/dist/protocol/UnconnectedPing.js +0 -24
- package/dist/protocol/UnconnectedPing.js.map +0 -1
- package/dist/protocol/UnconnectedPong.d.ts +0 -11
- package/dist/protocol/UnconnectedPong.d.ts.map +0 -1
- package/dist/protocol/UnconnectedPong.js +0 -26
- package/dist/protocol/UnconnectedPong.js.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ClientSocket.d.ts","sourceRoot":"","sources":["../src/ClientSocket.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ClientSocket.js","sourceRoot":"","sources":["../src/ClientSocket.ts"],"names":[],"mappings":";AAAA,wDAAwD"}
|
package/dist/RakNet.d.ts
CHANGED
|
@@ -1,9 +1,15 @@
|
|
|
1
|
-
|
|
2
|
-
import
|
|
3
|
-
import
|
|
4
|
-
import
|
|
5
|
-
import RakNetListener from './
|
|
6
|
-
import ServerName from './utils/ServerName';
|
|
7
|
-
export
|
|
8
|
-
export
|
|
1
|
+
/// <reference types="node" resolution-mode="require"/>
|
|
2
|
+
import * as Protocol from './protocol/Protocol.js';
|
|
3
|
+
import RakNetSession, { RakNetPriority as ConnectionPriority } from './Session.js';
|
|
4
|
+
import InetAddress from './utils/InetAddress.js';
|
|
5
|
+
import RakNetListener from './ServerSocket.js';
|
|
6
|
+
import ServerName from './utils/ServerName.js';
|
|
7
|
+
export declare const RAKNET_TPS = 10;
|
|
8
|
+
export declare const MAX_CHANNELS = 32;
|
|
9
|
+
export declare const MINECRAFT_PROTOCOL_VERSION = 11;
|
|
10
|
+
export declare const UDP_HEADER_SIZE = 28;
|
|
11
|
+
export declare const OFFLINE_MESSAGE_DATA_ID: Buffer;
|
|
12
|
+
export declare const MAX_MTU_SIZE = 1492;
|
|
13
|
+
export declare const MIN_MTU_SIZE = 400;
|
|
14
|
+
export { RakNetSession, ConnectionPriority, Protocol, RakNetListener, InetAddress, ServerName };
|
|
9
15
|
//# sourceMappingURL=RakNet.d.ts.map
|
package/dist/RakNet.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RakNet.d.ts","sourceRoot":"","sources":["../src/RakNet.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,QAAQ,MAAM,
|
|
1
|
+
{"version":3,"file":"RakNet.d.ts","sourceRoot":"","sources":["../src/RakNet.ts"],"names":[],"mappings":";AAAA,OAAO,KAAK,QAAQ,MAAM,wBAAwB,CAAC;AAEnD,OAAO,aAAa,EAAE,EAAE,cAAc,IAAI,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAEnF,OAAO,WAAW,MAAM,wBAAwB,CAAC;AACjD,OAAO,cAAc,MAAM,mBAAmB,CAAC;AAC/C,OAAO,UAAU,MAAM,uBAAuB,CAAC;AAE/C,eAAO,MAAM,UAAU,KAAK,CAAC;AAC7B,eAAO,MAAM,YAAY,KAAK,CAAC;AAC/B,eAAO,MAAM,0BAA0B,KAAK,CAAC;AAC7C,eAAO,MAAM,eAAe,KAAK,CAAC;AAClC,eAAO,MAAM,uBAAuB,QAGnC,CAAC;AAGF,eAAO,MAAM,YAAY,OAAO,CAAC;AACjC,eAAO,MAAM,YAAY,MAAM,CAAC;AAEhC,OAAO,EAAE,aAAa,EAAE,kBAAkB,EAAE,QAAQ,EAAE,cAAc,EAAE,WAAW,EAAE,UAAU,EAAE,CAAC"}
|
package/dist/RakNet.js
CHANGED
|
@@ -1,37 +1,15 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
if (mod && mod.__esModule) return mod;
|
|
16
|
-
var result = {};
|
|
17
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
18
|
-
__setModuleDefault(result, mod);
|
|
19
|
-
return result;
|
|
20
|
-
};
|
|
21
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
22
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
23
|
-
};
|
|
24
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
25
|
-
exports.ServerName = exports.InetAddress = exports.Listener = exports.Protocol = exports.ConnectionPriority = exports.Connection = void 0;
|
|
26
|
-
const Protocol = __importStar(require("./protocol/Protocol"));
|
|
27
|
-
exports.Protocol = Protocol;
|
|
28
|
-
const Connection_1 = __importStar(require("./Connection"));
|
|
29
|
-
exports.Connection = Connection_1.default;
|
|
30
|
-
Object.defineProperty(exports, "ConnectionPriority", { enumerable: true, get: function () { return Connection_1.Priority; } });
|
|
31
|
-
const InetAddress_1 = __importDefault(require("./utils/InetAddress"));
|
|
32
|
-
exports.InetAddress = InetAddress_1.default;
|
|
33
|
-
const Listener_1 = __importDefault(require("./Listener"));
|
|
34
|
-
exports.Listener = Listener_1.default;
|
|
35
|
-
const ServerName_1 = __importDefault(require("./utils/ServerName"));
|
|
36
|
-
exports.ServerName = ServerName_1.default;
|
|
1
|
+
import * as Protocol from './protocol/Protocol.js';
|
|
2
|
+
import RakNetSession, { RakNetPriority as ConnectionPriority } from './Session.js';
|
|
3
|
+
import InetAddress from './utils/InetAddress.js';
|
|
4
|
+
import RakNetListener from './ServerSocket.js';
|
|
5
|
+
import ServerName from './utils/ServerName.js';
|
|
6
|
+
export const RAKNET_TPS = 10;
|
|
7
|
+
export const MAX_CHANNELS = 32;
|
|
8
|
+
export const MINECRAFT_PROTOCOL_VERSION = 11;
|
|
9
|
+
export const UDP_HEADER_SIZE = 28;
|
|
10
|
+
export const OFFLINE_MESSAGE_DATA_ID = Buffer.from('\u0000\u00FF\u00FF\u0000\u00FE\u00FE\u00FE\u00FE\u00FD\u00FD\u00FD\u00FD\u0012\u0034\u0056\u0078', 'binary');
|
|
11
|
+
// https://github.com/facebookarchive/RakNet/blob/1a169895a900c9fc4841c556e16514182b75faf8/Source/MTUSize.h
|
|
12
|
+
export const MAX_MTU_SIZE = 1492;
|
|
13
|
+
export const MIN_MTU_SIZE = 400;
|
|
14
|
+
export { RakNetSession, ConnectionPriority, Protocol, RakNetListener, InetAddress, ServerName };
|
|
37
15
|
//# sourceMappingURL=RakNet.js.map
|
package/dist/RakNet.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RakNet.js","sourceRoot":"","sources":["../src/RakNet.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"RakNet.js","sourceRoot":"","sources":["../src/RakNet.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,QAAQ,MAAM,wBAAwB,CAAC;AAEnD,OAAO,aAAa,EAAE,EAAE,cAAc,IAAI,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAEnF,OAAO,WAAW,MAAM,wBAAwB,CAAC;AACjD,OAAO,cAAc,MAAM,mBAAmB,CAAC;AAC/C,OAAO,UAAU,MAAM,uBAAuB,CAAC;AAE/C,MAAM,CAAC,MAAM,UAAU,GAAG,EAAE,CAAC;AAC7B,MAAM,CAAC,MAAM,YAAY,GAAG,EAAE,CAAC;AAC/B,MAAM,CAAC,MAAM,0BAA0B,GAAG,EAAE,CAAC;AAC7C,MAAM,CAAC,MAAM,eAAe,GAAG,EAAE,CAAC;AAClC,MAAM,CAAC,MAAM,uBAAuB,GAAG,MAAM,CAAC,IAAI,CAC9C,kGAAkG,EAClG,QAAQ,CACX,CAAC;AAEF,2GAA2G;AAC3G,MAAM,CAAC,MAAM,YAAY,GAAG,IAAI,CAAC;AACjC,MAAM,CAAC,MAAM,YAAY,GAAG,GAAG,CAAC;AAEhC,OAAO,EAAE,aAAa,EAAE,kBAAkB,EAAE,QAAQ,EAAE,cAAc,EAAE,WAAW,EAAE,UAAU,EAAE,CAAC"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
/// <reference types="node" resolution-mode="require"/>
|
|
2
|
+
/// <reference types="node" resolution-mode="require"/>
|
|
3
|
+
/// <reference types="node" resolution-mode="require"/>
|
|
4
|
+
import { type Logger } from 'pino';
|
|
5
|
+
import { type RemoteInfo } from 'node:dgram';
|
|
6
|
+
import { EventEmitter } from 'events';
|
|
7
|
+
import Packet from './protocol/Packet.js';
|
|
8
|
+
import RakNetSession from './Session.js';
|
|
9
|
+
export default class ServerSocket extends EventEmitter {
|
|
10
|
+
private maxConnections;
|
|
11
|
+
private readonly onlineMode;
|
|
12
|
+
private readonly socket;
|
|
13
|
+
private readonly guid;
|
|
14
|
+
private readonly sessions;
|
|
15
|
+
private readonly logger;
|
|
16
|
+
private ticker;
|
|
17
|
+
private readonly offlineHandler;
|
|
18
|
+
constructor(maxConnections: number, onlineMode: boolean);
|
|
19
|
+
start(address: string, port: number): void;
|
|
20
|
+
private handleMessage;
|
|
21
|
+
kill(): void;
|
|
22
|
+
/**
|
|
23
|
+
* Used to retrive if we are overflowing the maximum
|
|
24
|
+
* connections we can allow, value given in the constructor.
|
|
25
|
+
* @returns {boolean} if we can hold new connections.
|
|
26
|
+
*/
|
|
27
|
+
allowIncomingConnections(): boolean;
|
|
28
|
+
/**
|
|
29
|
+
* Returns the maximum number of incoming connections.
|
|
30
|
+
* @returns {number} the maximum connections we can allow.
|
|
31
|
+
*/
|
|
32
|
+
getMaxConnections(): number;
|
|
33
|
+
/**
|
|
34
|
+
* Sets the maximum number of allowed incoming connections.
|
|
35
|
+
* @param {number} allowed - maximum number of connections.
|
|
36
|
+
*/
|
|
37
|
+
setMaxConnections(allowed: number): void;
|
|
38
|
+
addSession(rinfo: RemoteInfo, mtuSize: number, incomingGuid: bigint): void;
|
|
39
|
+
removeSession(session: RakNetSession, reason?: string): void;
|
|
40
|
+
getLogger(): Logger;
|
|
41
|
+
getSessions(): RakNetSession[];
|
|
42
|
+
getSessionByAddress(rinfo: RemoteInfo): RakNetSession | null;
|
|
43
|
+
getSessionByGUID(guid: bigint): RakNetSession | null;
|
|
44
|
+
getServerGuid(): bigint;
|
|
45
|
+
sendPacket<T extends Packet>(packet: T, rinfo: RemoteInfo): void;
|
|
46
|
+
sendBuffer(buffer: Buffer, rinfo: RemoteInfo): void;
|
|
47
|
+
}
|
|
48
|
+
//# sourceMappingURL=ServerSocket.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ServerSocket.d.ts","sourceRoot":"","sources":["../src/ServerSocket.ts"],"names":[],"mappings":";;;AAAA,OAAO,EAAQ,KAAK,MAAM,EAAE,MAAM,MAAM,CAAC;AACzC,OAAc,EAAE,KAAK,UAAU,EAAE,MAAM,YAAY,CAAC;AAEpD,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AACtC,OAAO,MAAM,MAAM,sBAAsB,CAAC;AAE1C,OAAO,aAAa,MAAM,cAAc,CAAC;AAGzC,MAAM,CAAC,OAAO,OAAO,YAAa,SAAQ,YAAY;IAS/B,OAAO,CAAC,cAAc;IAAU,OAAO,CAAC,QAAQ,CAAC,UAAU;IAR9E,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAe;IACtC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAS;IAC9B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAiC;IAC1D,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,MAAM,CAA6B;IAE3C,OAAO,CAAC,QAAQ,CAAC,cAAc,CAA4B;gBAEhC,cAAc,EAAE,MAAM,EAAmB,UAAU,EAAE,OAAO;IAWhF,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI;IAwBjD,OAAO,CAAC,aAAa;IAqBd,IAAI,IAAI,IAAI;IASnB;;;;OAIG;IACI,wBAAwB,IAAI,OAAO;IAI1C;;;OAGG;IACI,iBAAiB,IAAI,MAAM;IAIlC;;;OAGG;IACI,iBAAiB,CAAC,OAAO,EAAE,MAAM;IAIjC,UAAU,CAAC,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM;IAKnE,aAAa,CAAC,OAAO,EAAE,aAAa,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI;IAO5D,SAAS,IAAI,MAAM;IAInB,WAAW,IAAI,aAAa,EAAE;IAI9B,mBAAmB,CAAC,KAAK,EAAE,UAAU,GAAG,aAAa,GAAG,IAAI;IAQ5D,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,aAAa,GAAG,IAAI;IAIpD,aAAa,IAAI,MAAM;IAIvB,UAAU,CAAC,CAAC,SAAS,MAAM,EAAE,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,UAAU,GAAG,IAAI;IAKhE,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,GAAG,IAAI;CAG7D"}
|
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
import { pino } from 'pino';
|
|
2
|
+
import Dgram from 'node:dgram';
|
|
3
|
+
import BitFlags from './protocol/BitFlags.js';
|
|
4
|
+
import { EventEmitter } from 'events';
|
|
5
|
+
import { RAKNET_TPS } from './RakNet.js';
|
|
6
|
+
import RakNetSession from './Session.js';
|
|
7
|
+
import OfflineHandler from './protocol/OfflineHandler.js';
|
|
8
|
+
export default class ServerSocket extends EventEmitter {
|
|
9
|
+
maxConnections;
|
|
10
|
+
onlineMode;
|
|
11
|
+
socket;
|
|
12
|
+
guid;
|
|
13
|
+
sessions = new Set();
|
|
14
|
+
logger;
|
|
15
|
+
ticker;
|
|
16
|
+
offlineHandler = new OfflineHandler(this);
|
|
17
|
+
constructor(maxConnections, onlineMode) {
|
|
18
|
+
super();
|
|
19
|
+
this.maxConnections = maxConnections;
|
|
20
|
+
this.onlineMode = onlineMode;
|
|
21
|
+
this.socket = Dgram.createSocket('udp4');
|
|
22
|
+
// Dereferencing the socket will allow
|
|
23
|
+
// us closing the process while listening
|
|
24
|
+
this.socket.unref();
|
|
25
|
+
this.guid = Buffer.allocUnsafe(8).readBigInt64BE();
|
|
26
|
+
this.logger = pino({ name: 'RakNet', base: undefined });
|
|
27
|
+
this.logger.level = 'trace'; // TODO: via pino-pretty cli
|
|
28
|
+
}
|
|
29
|
+
start(address, port) {
|
|
30
|
+
try {
|
|
31
|
+
this.socket.bind(port, address);
|
|
32
|
+
}
|
|
33
|
+
catch (e) {
|
|
34
|
+
if (e instanceof Error) {
|
|
35
|
+
this.logger.error('Failed to bind socket, error message=%s', e.message);
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
const tick = () => setTimeout(() => {
|
|
39
|
+
for (const session of this.sessions.values()) {
|
|
40
|
+
session.update(Date.now());
|
|
41
|
+
}
|
|
42
|
+
tick();
|
|
43
|
+
}, RAKNET_TPS);
|
|
44
|
+
// Start ticking
|
|
45
|
+
this.ticker = tick();
|
|
46
|
+
this.ticker.unref();
|
|
47
|
+
this.socket.on('message', this.handleMessage.bind(this));
|
|
48
|
+
}
|
|
49
|
+
handleMessage(msg, rinfo) {
|
|
50
|
+
// Directly check if it's a offline message
|
|
51
|
+
if ((msg[0] & BitFlags.VALID) === 0) {
|
|
52
|
+
this.offlineHandler.process(msg, rinfo);
|
|
53
|
+
}
|
|
54
|
+
else {
|
|
55
|
+
// Normally RakNet ignores unhandled packets, but we still want some logs...
|
|
56
|
+
// https://github.com/facebookarchive/RakNet/blob/master/Source/RakPeer.cpp#L5465
|
|
57
|
+
let session;
|
|
58
|
+
if ((session = this.getSessionByAddress(rinfo)) !== null) {
|
|
59
|
+
session.handle(msg);
|
|
60
|
+
}
|
|
61
|
+
else {
|
|
62
|
+
// May be triggered by the ACK of disconnect packet that is received after session is closed
|
|
63
|
+
this.logger.debug('Cannot handle Datagram for unconnected client=%s, buffer=%o', `${rinfo.address}:${rinfo.port}`, msg);
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
kill() {
|
|
68
|
+
// Send last remaining packets to all players
|
|
69
|
+
for (const session of this.getSessions()) {
|
|
70
|
+
session.sendFrameQueue();
|
|
71
|
+
}
|
|
72
|
+
clearTimeout(this.ticker);
|
|
73
|
+
}
|
|
74
|
+
/**
|
|
75
|
+
* Used to retrive if we are overflowing the maximum
|
|
76
|
+
* connections we can allow, value given in the constructor.
|
|
77
|
+
* @returns {boolean} if we can hold new connections.
|
|
78
|
+
*/
|
|
79
|
+
allowIncomingConnections() {
|
|
80
|
+
return this.sessions.size < this.maxConnections;
|
|
81
|
+
}
|
|
82
|
+
/**
|
|
83
|
+
* Returns the maximum number of incoming connections.
|
|
84
|
+
* @returns {number} the maximum connections we can allow.
|
|
85
|
+
*/
|
|
86
|
+
getMaxConnections() {
|
|
87
|
+
return this.maxConnections;
|
|
88
|
+
}
|
|
89
|
+
/**
|
|
90
|
+
* Sets the maximum number of allowed incoming connections.
|
|
91
|
+
* @param {number} allowed - maximum number of connections.
|
|
92
|
+
*/
|
|
93
|
+
setMaxConnections(allowed) {
|
|
94
|
+
this.maxConnections = allowed;
|
|
95
|
+
}
|
|
96
|
+
addSession(rinfo, mtuSize, incomingGuid) {
|
|
97
|
+
this.sessions.add(new RakNetSession(this, mtuSize, rinfo, incomingGuid));
|
|
98
|
+
this.logger.debug('Session created for client=%o, mtu=%d', `${rinfo.address}:${rinfo.port}`, mtuSize);
|
|
99
|
+
}
|
|
100
|
+
removeSession(session, reason) {
|
|
101
|
+
if (this.sessions.delete(session)) {
|
|
102
|
+
this.emit('closeConnection', session.getAddress(), reason);
|
|
103
|
+
this.logger.debug('Closed session for client=%o, reason=%s', session.getAddress(), reason);
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
getLogger() {
|
|
107
|
+
return this.logger;
|
|
108
|
+
}
|
|
109
|
+
getSessions() {
|
|
110
|
+
return Array.from(this.sessions.values());
|
|
111
|
+
}
|
|
112
|
+
getSessionByAddress(rinfo) {
|
|
113
|
+
return (this.getSessions().find((session) => session.rinfo.address === rinfo.address && session.rinfo.port === rinfo.port) ?? null);
|
|
114
|
+
}
|
|
115
|
+
getSessionByGUID(guid) {
|
|
116
|
+
return this.getSessions().find((session) => session.guid === guid) ?? null;
|
|
117
|
+
}
|
|
118
|
+
getServerGuid() {
|
|
119
|
+
return this.guid;
|
|
120
|
+
}
|
|
121
|
+
sendPacket(packet, rinfo) {
|
|
122
|
+
packet.encode();
|
|
123
|
+
this.sendBuffer(packet.getBuffer(), rinfo);
|
|
124
|
+
}
|
|
125
|
+
sendBuffer(buffer, rinfo) {
|
|
126
|
+
this.socket.send(buffer, rinfo.port, rinfo.address);
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
//# sourceMappingURL=ServerSocket.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ServerSocket.js","sourceRoot":"","sources":["../src/ServerSocket.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
/// <reference types="node" resolution-mode="require"/>
|
|
2
|
+
/// <reference types="node" resolution-mode="require"/>
|
|
3
|
+
import Frame from './protocol/Frame.js';
|
|
4
|
+
import InetAddress from './utils/InetAddress.js';
|
|
5
|
+
import RakNetListener from './ServerSocket.js';
|
|
6
|
+
import { type RemoteInfo } from 'node:dgram';
|
|
7
|
+
export declare enum RakNetPriority {
|
|
8
|
+
NORMAL = 0,
|
|
9
|
+
IMMEDIATE = 1
|
|
10
|
+
}
|
|
11
|
+
export declare enum SessionStatus {
|
|
12
|
+
CONNECTING = 0,
|
|
13
|
+
CONNECTED = 1,
|
|
14
|
+
DISCONNECTING = 2,
|
|
15
|
+
DISCONNECTED = 3
|
|
16
|
+
}
|
|
17
|
+
export default class Session {
|
|
18
|
+
private readonly listener;
|
|
19
|
+
private readonly mtuSize;
|
|
20
|
+
readonly rinfo: RemoteInfo;
|
|
21
|
+
readonly guid: bigint;
|
|
22
|
+
private state;
|
|
23
|
+
private outputFrameQueue;
|
|
24
|
+
private outputSequenceNumber;
|
|
25
|
+
private outputReliableIndex;
|
|
26
|
+
private readonly outputBackupQueue;
|
|
27
|
+
private readonly outputOrderIndex;
|
|
28
|
+
private readonly outputSequenceIndex;
|
|
29
|
+
private receivedFrameSequences;
|
|
30
|
+
private lostFrameSequences;
|
|
31
|
+
private readonly fragmentsQueue;
|
|
32
|
+
private outputFragmentIndex;
|
|
33
|
+
private lastInputSequenceNumber;
|
|
34
|
+
private readonly inputHighestSequenceIndex;
|
|
35
|
+
private readonly inputOrderIndex;
|
|
36
|
+
private inputOrderingQueue;
|
|
37
|
+
private lastUpdate;
|
|
38
|
+
private active;
|
|
39
|
+
private readonly packetPool;
|
|
40
|
+
constructor(listener: RakNetListener, mtuSize: number, rinfo: RemoteInfo, guid: bigint);
|
|
41
|
+
private readonly packetHandlers;
|
|
42
|
+
update(timestamp: number): void;
|
|
43
|
+
handle(buffer: Buffer): void;
|
|
44
|
+
private handleFrameSet;
|
|
45
|
+
private handleACK;
|
|
46
|
+
private handleNACK;
|
|
47
|
+
private handleFrame;
|
|
48
|
+
sendFrame(frame: Frame, flags?: RakNetPriority): void;
|
|
49
|
+
private addFrameToQueue;
|
|
50
|
+
private handlePacket;
|
|
51
|
+
handleConnectionRequest(buffer: Buffer): Promise<Frame>;
|
|
52
|
+
handleConnectedPing(buffer: Buffer): Promise<Frame>;
|
|
53
|
+
handleFragment(frame: Frame): void;
|
|
54
|
+
sendFrameQueue(): void;
|
|
55
|
+
private sendFrameSet;
|
|
56
|
+
private sendPacket;
|
|
57
|
+
close(): void;
|
|
58
|
+
/**
|
|
59
|
+
* Kick a client
|
|
60
|
+
* @param reason the reason message, optional
|
|
61
|
+
*/
|
|
62
|
+
disconnect(reason?: string): void;
|
|
63
|
+
getState(): number;
|
|
64
|
+
isActive(): boolean;
|
|
65
|
+
isDisconnected(): boolean;
|
|
66
|
+
getListener(): RakNetListener;
|
|
67
|
+
/**
|
|
68
|
+
* Returns the maxmium transfer unit
|
|
69
|
+
* for this connection.
|
|
70
|
+
* @returns {number} the UDP adjusted.
|
|
71
|
+
*/
|
|
72
|
+
getMTU(): number;
|
|
73
|
+
getAddress(): InetAddress;
|
|
74
|
+
}
|
|
75
|
+
//# sourceMappingURL=Session.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Session.d.ts","sourceRoot":"","sources":["../src/Session.ts"],"names":[],"mappings":";;AAOA,OAAO,KAAgC,MAAM,qBAAqB,CAAC;AAGnE,OAAO,WAAW,MAAM,wBAAwB,CAAC;AAKjD,OAAO,cAAc,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,YAAY,CAAC;AAI7C,oBAAY,cAAc;IACtB,MAAM,IAAA;IACN,SAAS,IAAA;CACZ;AAED,oBAAY,aAAa;IACrB,UAAU,IAAA;IACV,SAAS,IAAA;IACT,aAAa,IAAA;IACb,YAAY,IAAA;CACf;AAED,MAAM,CAAC,OAAO,OAAO,OAAO;IA+BpB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,OAAO;aACR,KAAK,EAAE,UAAU;aACjB,IAAI,EAAE,MAAM;IAjChC,OAAO,CAAC,KAAK,CAA4B;IAEzC,OAAO,CAAC,gBAAgB,CAAkB;IAC1C,OAAO,CAAC,oBAAoB,CAAK;IACjC,OAAO,CAAC,mBAAmB,CAAK;IAChC,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAmC;IAErE,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAW;IAC5C,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAW;IAE/C,OAAO,CAAC,sBAAsB,CAA0B;IACxD,OAAO,CAAC,kBAAkB,CAA0B;IAGpD,OAAO,CAAC,QAAQ,CAAC,cAAc,CAA8C;IAC7E,OAAO,CAAC,mBAAmB,CAAK;IAEhC,OAAO,CAAC,uBAAuB,CAAM;IACrC,OAAO,CAAC,QAAQ,CAAC,yBAAyB,CAAW;IACrD,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAW;IAC3C,OAAO,CAAC,kBAAkB,CAA8C;IAGxE,OAAO,CAAC,UAAU,CAAsB;IACxC,OAAO,CAAC,MAAM,CAAQ;IAGtB,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAoB;gBAG1B,QAAQ,EAAE,cAAc,EACxB,OAAO,EAAE,MAAM,EAChB,KAAK,EAAE,UAAU,EACjB,IAAI,EAAE,MAAM;IAgBhC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAoB7B;IAEK,MAAM,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IA+B/B,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAcnC,OAAO,CAAC,cAAc;IA6CtB,OAAO,CAAC,SAAS;IAQjB,OAAO,CAAC,UAAU;IAYlB,OAAO,CAAC,WAAW;IA8CZ,SAAS,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,iBAAwB,GAAG,IAAI;IA6CnE,OAAO,CAAC,eAAe;IAiBvB,OAAO,CAAC,YAAY;IA0BP,uBAAuB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC;IAkBvD,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC;IAiBzD,cAAc,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI;IA+BlC,cAAc,IAAI,IAAI;IAQ7B,OAAO,CAAC,YAAY;IAQpB,OAAO,CAAC,UAAU;IAIX,KAAK,IAAI,IAAI;IAKpB;;;OAGG;IACI,UAAU,CAAC,MAAM,SAAsB,GAAG,IAAI;IAS9C,QAAQ,IAAI,MAAM;IAIlB,QAAQ,IAAI,OAAO;IAInB,cAAc,IAAI,OAAO;IAIzB,WAAW,IAAI,cAAc;IAIpC;;;;OAIG;IACI,MAAM,IAAI,MAAM;IAIhB,UAAU,IAAI,WAAW;CAGnC"}
|