@jsonjoy.com/json-pack 1.19.0 → 1.21.0
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/lib/JsonPackMpint.d.ts +8 -0
- package/lib/JsonPackMpint.js +74 -0
- package/lib/JsonPackMpint.js.map +1 -0
- package/lib/json/JsonEncoder.js +9 -3
- package/lib/json/JsonEncoder.js.map +1 -1
- package/lib/nfs/v4/Nfsv4Decoder.d.ts +14 -10
- package/lib/nfs/v4/Nfsv4Decoder.js +156 -74
- package/lib/nfs/v4/Nfsv4Decoder.js.map +1 -1
- package/lib/nfs/v4/Nfsv4Encoder.d.ts +4 -91
- package/lib/nfs/v4/Nfsv4Encoder.js +7 -823
- package/lib/nfs/v4/Nfsv4Encoder.js.map +1 -1
- package/lib/nfs/v4/Nfsv4FullEncoder.d.ts +32 -0
- package/lib/nfs/v4/Nfsv4FullEncoder.js +72 -0
- package/lib/nfs/v4/Nfsv4FullEncoder.js.map +1 -0
- package/lib/nfs/v4/attributes.d.ts +17 -0
- package/lib/nfs/v4/attributes.js +203 -0
- package/lib/nfs/v4/attributes.js.map +1 -0
- package/lib/nfs/v4/builder.d.ts +60 -0
- package/lib/nfs/v4/builder.js +187 -0
- package/lib/nfs/v4/builder.js.map +1 -0
- package/lib/nfs/v4/client/NfsFsDir.d.ts +20 -0
- package/lib/nfs/v4/client/NfsFsDir.js +129 -0
- package/lib/nfs/v4/client/NfsFsDir.js.map +1 -0
- package/lib/nfs/v4/client/NfsFsDirent.d.ts +14 -0
- package/lib/nfs/v4/client/NfsFsDirent.js +32 -0
- package/lib/nfs/v4/client/NfsFsDirent.js.map +1 -0
- package/lib/nfs/v4/client/NfsFsFileHandle.d.ts +34 -0
- package/lib/nfs/v4/client/NfsFsFileHandle.js +268 -0
- package/lib/nfs/v4/client/NfsFsFileHandle.js.map +1 -0
- package/lib/nfs/v4/client/NfsFsStats.d.ts +31 -0
- package/lib/nfs/v4/client/NfsFsStats.js +49 -0
- package/lib/nfs/v4/client/NfsFsStats.js.map +1 -0
- package/lib/nfs/v4/client/Nfsv4FsClient.d.ts +54 -0
- package/lib/nfs/v4/client/Nfsv4FsClient.js +812 -0
- package/lib/nfs/v4/client/Nfsv4FsClient.js.map +1 -0
- package/lib/nfs/v4/client/Nfsv4TcpClient.d.ts +41 -0
- package/lib/nfs/v4/client/Nfsv4TcpClient.js +216 -0
- package/lib/nfs/v4/client/Nfsv4TcpClient.js.map +1 -0
- package/lib/nfs/v4/client/types.d.ts +9 -0
- package/lib/nfs/v4/client/types.js +3 -0
- package/lib/nfs/v4/client/types.js.map +1 -0
- package/lib/nfs/v4/constants.d.ts +3 -0
- package/lib/nfs/v4/constants.js +4 -0
- package/lib/nfs/v4/constants.js.map +1 -1
- package/lib/nfs/v4/format.d.ts +23 -0
- package/lib/nfs/v4/format.js +870 -0
- package/lib/nfs/v4/format.js.map +1 -0
- package/lib/nfs/v4/index.d.ts +3 -1
- package/lib/nfs/v4/index.js +3 -1
- package/lib/nfs/v4/index.js.map +1 -1
- package/lib/nfs/v4/messages.d.ts +208 -90
- package/lib/nfs/v4/messages.js +585 -1
- package/lib/nfs/v4/messages.js.map +1 -1
- package/lib/nfs/v4/server/Nfsv4CompoundProcCtx.d.ts +11 -0
- package/lib/nfs/v4/server/Nfsv4CompoundProcCtx.js +155 -0
- package/lib/nfs/v4/server/Nfsv4CompoundProcCtx.js.map +1 -0
- package/lib/nfs/v4/server/Nfsv4Connection.d.ts +42 -0
- package/lib/nfs/v4/server/Nfsv4Connection.js +160 -0
- package/lib/nfs/v4/server/Nfsv4Connection.js.map +1 -0
- package/lib/nfs/v4/server/Nfsv4TcpServer.d.ts +26 -0
- package/lib/nfs/v4/server/Nfsv4TcpServer.js +91 -0
- package/lib/nfs/v4/server/Nfsv4TcpServer.js.map +1 -0
- package/lib/nfs/v4/server/operations/ByteRangeLock.d.ts +11 -0
- package/lib/nfs/v4/server/operations/ByteRangeLock.js +21 -0
- package/lib/nfs/v4/server/operations/ByteRangeLock.js.map +1 -0
- package/lib/nfs/v4/server/operations/ClientRecord.d.ts +13 -0
- package/lib/nfs/v4/server/operations/ClientRecord.js +17 -0
- package/lib/nfs/v4/server/operations/ClientRecord.js.map +1 -0
- package/lib/nfs/v4/server/operations/FilesystemStats.d.ts +9 -0
- package/lib/nfs/v4/server/operations/FilesystemStats.js +15 -0
- package/lib/nfs/v4/server/operations/FilesystemStats.js.map +1 -0
- package/lib/nfs/v4/server/operations/LockOwnerState.d.ts +9 -0
- package/lib/nfs/v4/server/operations/LockOwnerState.js +15 -0
- package/lib/nfs/v4/server/operations/LockOwnerState.js.map +1 -0
- package/lib/nfs/v4/server/operations/LockStateid.d.ts +10 -0
- package/lib/nfs/v4/server/operations/LockStateid.js +22 -0
- package/lib/nfs/v4/server/operations/LockStateid.js.map +1 -0
- package/lib/nfs/v4/server/operations/Nfsv4Operations.d.ts +44 -0
- package/lib/nfs/v4/server/operations/Nfsv4Operations.js +3 -0
- package/lib/nfs/v4/server/operations/Nfsv4Operations.js.map +1 -0
- package/lib/nfs/v4/server/operations/Nfsv4OperationsNotImpl.d.ts +42 -0
- package/lib/nfs/v4/server/operations/Nfsv4OperationsNotImpl.js +159 -0
- package/lib/nfs/v4/server/operations/Nfsv4OperationsNotImpl.js.map +1 -0
- package/lib/nfs/v4/server/operations/OpenFileState.d.ts +14 -0
- package/lib/nfs/v4/server/operations/OpenFileState.js +17 -0
- package/lib/nfs/v4/server/operations/OpenFileState.js.map +1 -0
- package/lib/nfs/v4/server/operations/OpenOwnerState.d.ts +9 -0
- package/lib/nfs/v4/server/operations/OpenOwnerState.js +15 -0
- package/lib/nfs/v4/server/operations/OpenOwnerState.js.map +1 -0
- package/lib/nfs/v4/server/operations/node/Nfsv4OperationsNode.d.ts +99 -0
- package/lib/nfs/v4/server/operations/node/Nfsv4OperationsNode.js +1400 -0
- package/lib/nfs/v4/server/operations/node/Nfsv4OperationsNode.js.map +1 -0
- package/lib/nfs/v4/server/operations/node/attrs.d.ts +5 -0
- package/lib/nfs/v4/server/operations/node/attrs.js +262 -0
- package/lib/nfs/v4/server/operations/node/attrs.js.map +1 -0
- package/lib/nfs/v4/server/operations/node/fh.d.ts +28 -0
- package/lib/nfs/v4/server/operations/node/fh.js +147 -0
- package/lib/nfs/v4/server/operations/node/fh.js.map +1 -0
- package/lib/nfs/v4/server/operations/node/util.d.ts +4 -0
- package/lib/nfs/v4/server/operations/node/util.js +17 -0
- package/lib/nfs/v4/server/operations/node/util.js.map +1 -0
- package/lib/nfs/v4/server/types.d.ts +4 -0
- package/lib/nfs/v4/server/types.js +3 -0
- package/lib/nfs/v4/server/types.js.map +1 -0
- package/lib/nfs/v4/server/util.d.ts +6 -0
- package/lib/nfs/v4/server/util.js +184 -0
- package/lib/nfs/v4/server/util.js.map +1 -0
- package/lib/nfs/v4/structs.d.ts +106 -51
- package/lib/nfs/v4/structs.js +237 -16
- package/lib/nfs/v4/structs.js.map +1 -1
- package/lib/rm/RmRecordDecoder.js.map +1 -1
- package/lib/rm/RmRecordEncoder.d.ts +2 -0
- package/lib/rm/RmRecordEncoder.js +25 -0
- package/lib/rm/RmRecordEncoder.js.map +1 -1
- package/lib/rpc/RpcMessageDecoder.js +3 -1
- package/lib/rpc/RpcMessageDecoder.js.map +1 -1
- package/lib/ssh/SshDecoder.d.ts +20 -0
- package/lib/ssh/SshDecoder.js +87 -0
- package/lib/ssh/SshDecoder.js.map +1 -0
- package/lib/ssh/SshEncoder.d.ts +27 -0
- package/lib/ssh/SshEncoder.js +144 -0
- package/lib/ssh/SshEncoder.js.map +1 -0
- package/lib/ssh/index.d.ts +2 -0
- package/lib/ssh/index.js +6 -0
- package/lib/ssh/index.js.map +1 -0
- package/lib/xdr/types.d.ts +6 -0
- package/package.json +4 -2
- package/lib/nfs/v4/FullNfsv4Encoder.d.ts +0 -28
- package/lib/nfs/v4/FullNfsv4Encoder.js +0 -73
- package/lib/nfs/v4/FullNfsv4Encoder.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"messages.js","sourceRoot":"","sources":["../../../src/nfs/v4/messages.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"messages.js","sourceRoot":"","sources":["../../../src/nfs/v4/messages.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { Nfsv4Connection } from './Nfsv4Connection';
|
|
2
|
+
import * as msg from '../messages';
|
|
3
|
+
export declare class Nfsv4CompoundProcCtx {
|
|
4
|
+
readonly connection: Nfsv4Connection;
|
|
5
|
+
readonly req: msg.Nfsv4CompoundRequest;
|
|
6
|
+
cfh: Uint8Array | null;
|
|
7
|
+
sfh: Uint8Array | null;
|
|
8
|
+
constructor(connection: Nfsv4Connection, req: msg.Nfsv4CompoundRequest);
|
|
9
|
+
getPrincipal(): string;
|
|
10
|
+
exec(): Promise<msg.Nfsv4CompoundResponse>;
|
|
11
|
+
}
|
|
@@ -0,0 +1,155 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Nfsv4CompoundProcCtx = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const msg = tslib_1.__importStar(require("../messages"));
|
|
6
|
+
const format_1 = require("../format");
|
|
7
|
+
class Nfsv4CompoundProcCtx {
|
|
8
|
+
constructor(connection, req) {
|
|
9
|
+
this.connection = connection;
|
|
10
|
+
this.req = req;
|
|
11
|
+
this.cfh = null;
|
|
12
|
+
this.sfh = null;
|
|
13
|
+
}
|
|
14
|
+
getPrincipal() {
|
|
15
|
+
return 'none';
|
|
16
|
+
}
|
|
17
|
+
async exec() {
|
|
18
|
+
const { req, connection } = this;
|
|
19
|
+
const { ops, debug, logger } = connection;
|
|
20
|
+
const { argarray, tag } = req;
|
|
21
|
+
const length = argarray.length;
|
|
22
|
+
let status = 0;
|
|
23
|
+
const resarray = [];
|
|
24
|
+
OPS_LOOP: for (let i = 0; i < length; i++) {
|
|
25
|
+
const op = argarray[i];
|
|
26
|
+
const opReq = op;
|
|
27
|
+
let fn = void 0;
|
|
28
|
+
let Response = void 0;
|
|
29
|
+
if (op instanceof msg.Nfsv4AccessRequest)
|
|
30
|
+
(fn = ops.ACCESS), (Response = msg.Nfsv4AccessResponse);
|
|
31
|
+
else if (op instanceof msg.Nfsv4PutrootfhRequest)
|
|
32
|
+
(fn = ops.PUTROOTFH), (Response = msg.Nfsv4PutrootfhResponse);
|
|
33
|
+
else if (op instanceof msg.Nfsv4PutpubfhRequest)
|
|
34
|
+
(fn = ops.PUTPUBFH), (Response = msg.Nfsv4PutpubfhResponse);
|
|
35
|
+
else if (op instanceof msg.Nfsv4PutfhRequest)
|
|
36
|
+
(fn = ops.PUTFH), (Response = msg.Nfsv4PutfhResponse);
|
|
37
|
+
else if (op instanceof msg.Nfsv4GetfhRequest)
|
|
38
|
+
(fn = ops.GETFH), (Response = msg.Nfsv4GetfhResponse);
|
|
39
|
+
else if (op instanceof msg.Nfsv4SavefhRequest)
|
|
40
|
+
(fn = ops.SAVEFH), (Response = msg.Nfsv4SavefhResponse);
|
|
41
|
+
else if (op instanceof msg.Nfsv4ReadRequest)
|
|
42
|
+
(fn = ops.READ), (Response = msg.Nfsv4ReadResponse);
|
|
43
|
+
else if (op instanceof msg.Nfsv4ReaddirRequest)
|
|
44
|
+
(fn = ops.READDIR), (Response = msg.Nfsv4ReaddirResponse);
|
|
45
|
+
else if (op instanceof msg.Nfsv4ReadlinkRequest)
|
|
46
|
+
(fn = ops.READLINK), (Response = msg.Nfsv4ReadlinkResponse);
|
|
47
|
+
else if (op instanceof msg.Nfsv4WriteRequest)
|
|
48
|
+
(fn = ops.WRITE), (Response = msg.Nfsv4WriteResponse);
|
|
49
|
+
else if (op instanceof msg.Nfsv4OpenRequest)
|
|
50
|
+
(fn = ops.OPEN), (Response = msg.Nfsv4OpenResponse);
|
|
51
|
+
else if (op instanceof msg.Nfsv4CloseRequest)
|
|
52
|
+
(fn = ops.CLOSE), (Response = msg.Nfsv4CloseResponse);
|
|
53
|
+
else if (op instanceof msg.Nfsv4RemoveRequest)
|
|
54
|
+
(fn = ops.REMOVE), (Response = msg.Nfsv4RemoveResponse);
|
|
55
|
+
else if (op instanceof msg.Nfsv4RenameRequest)
|
|
56
|
+
(fn = ops.RENAME), (Response = msg.Nfsv4RenameResponse);
|
|
57
|
+
else if (op instanceof msg.Nfsv4OpenattrRequest)
|
|
58
|
+
(fn = ops.OPENATTR), (Response = msg.Nfsv4OpenattrResponse);
|
|
59
|
+
else if (op instanceof msg.Nfsv4GetattrRequest)
|
|
60
|
+
(fn = ops.GETATTR), (Response = msg.Nfsv4GetattrResponse);
|
|
61
|
+
else if (op instanceof msg.Nfsv4SetattrRequest)
|
|
62
|
+
(fn = ops.SETATTR), (Response = msg.Nfsv4SetattrResponse);
|
|
63
|
+
else if (op instanceof msg.Nfsv4CreateRequest)
|
|
64
|
+
(fn = ops.CREATE), (Response = msg.Nfsv4CreateResponse);
|
|
65
|
+
else if (op instanceof msg.Nfsv4SetclientidRequest)
|
|
66
|
+
(fn = ops.SETCLIENTID), (Response = msg.Nfsv4SetclientidResponse);
|
|
67
|
+
else if (op instanceof msg.Nfsv4SetclientidConfirmRequest)
|
|
68
|
+
(fn = ops.SETCLIENTID_CONFIRM), (Response = msg.Nfsv4SetclientidConfirmResponse);
|
|
69
|
+
else if (op instanceof msg.Nfsv4OpenConfirmRequest)
|
|
70
|
+
(fn = ops.OPEN_CONFIRM), (Response = msg.Nfsv4OpenConfirmResponse);
|
|
71
|
+
else if (op instanceof msg.Nfsv4OpenDowngradeRequest)
|
|
72
|
+
(fn = ops.OPEN_DOWNGRADE), (Response = msg.Nfsv4OpenDowngradeResponse);
|
|
73
|
+
else if (op instanceof msg.Nfsv4CommitRequest)
|
|
74
|
+
(fn = ops.COMMIT), (Response = msg.Nfsv4CommitResponse);
|
|
75
|
+
else if (op instanceof msg.Nfsv4LinkRequest)
|
|
76
|
+
(fn = ops.LINK), (Response = msg.Nfsv4LinkResponse);
|
|
77
|
+
else if (op instanceof msg.Nfsv4RenewRequest)
|
|
78
|
+
(fn = ops.RENEW), (Response = msg.Nfsv4RenewResponse);
|
|
79
|
+
else if (op instanceof msg.Nfsv4DelegpurgeRequest)
|
|
80
|
+
(fn = ops.DELEGPURGE), (Response = msg.Nfsv4DelegpurgeResponse);
|
|
81
|
+
else if (op instanceof msg.Nfsv4DelegreturnRequest)
|
|
82
|
+
(fn = ops.DELEGRETURN), (Response = msg.Nfsv4DelegreturnResponse);
|
|
83
|
+
else if (op instanceof msg.Nfsv4RestorefhRequest)
|
|
84
|
+
(fn = ops.RESTOREFH), (Response = msg.Nfsv4RestorefhResponse);
|
|
85
|
+
else if (op instanceof msg.Nfsv4SecinfoRequest)
|
|
86
|
+
(fn = ops.SECINFO), (Response = msg.Nfsv4SecinfoResponse);
|
|
87
|
+
else if (op instanceof msg.Nfsv4VerifyRequest)
|
|
88
|
+
(fn = ops.VERIFY), (Response = msg.Nfsv4VerifyResponse);
|
|
89
|
+
else if (op instanceof msg.Nfsv4LockRequest)
|
|
90
|
+
(fn = ops.LOCK), (Response = msg.Nfsv4LockResponse);
|
|
91
|
+
else if (op instanceof msg.Nfsv4LocktRequest)
|
|
92
|
+
(fn = ops.LOCKT), (Response = msg.Nfsv4LocktResponse);
|
|
93
|
+
else if (op instanceof msg.Nfsv4LockuRequest)
|
|
94
|
+
(fn = ops.LOCKU), (Response = msg.Nfsv4LockuResponse);
|
|
95
|
+
else if (op instanceof msg.Nfsv4LookupRequest)
|
|
96
|
+
(fn = ops.LOOKUP), (Response = msg.Nfsv4LookupResponse);
|
|
97
|
+
else if (op instanceof msg.Nfsv4LookuppRequest)
|
|
98
|
+
(fn = ops.LOOKUPP), (Response = msg.Nfsv4LookuppResponse);
|
|
99
|
+
else if (op instanceof msg.Nfsv4NverifyRequest)
|
|
100
|
+
(fn = ops.NVERIFY), (Response = msg.Nfsv4NverifyResponse);
|
|
101
|
+
else if (op instanceof msg.Nfsv4ReleaseLockOwnerRequest)
|
|
102
|
+
(fn = ops.RELEASE_LOCKOWNER), (Response = msg.Nfsv4ReleaseLockOwnerResponse);
|
|
103
|
+
else if (op instanceof msg.Nfsv4IllegalRequest)
|
|
104
|
+
(fn = ops.ILLEGAL), (Response = msg.Nfsv4IllegalResponse);
|
|
105
|
+
if (!fn || !Response)
|
|
106
|
+
return new msg.Nfsv4CompoundResponse(10044, tag, resarray);
|
|
107
|
+
EXEC_OP: try {
|
|
108
|
+
if (debug)
|
|
109
|
+
logger.log((0, format_1.formatNfsv4Request)(opReq));
|
|
110
|
+
const opResponse = await fn.call(ops, opReq, this);
|
|
111
|
+
if (!(opResponse instanceof Response))
|
|
112
|
+
throw new Error('Unexpected response, fn = ' + fn.name);
|
|
113
|
+
if (debug)
|
|
114
|
+
logger.log(': ' + (0, format_1.formatNfsv4Response)(opResponse));
|
|
115
|
+
status = opResponse.status;
|
|
116
|
+
resarray.push(opResponse);
|
|
117
|
+
}
|
|
118
|
+
catch (err) {
|
|
119
|
+
if (debug)
|
|
120
|
+
logger.error(': ERROR', fn.name, err);
|
|
121
|
+
if (err instanceof Response) {
|
|
122
|
+
if (err.status !== 0) {
|
|
123
|
+
status = err.status;
|
|
124
|
+
resarray.push(err);
|
|
125
|
+
break EXEC_OP;
|
|
126
|
+
}
|
|
127
|
+
else {
|
|
128
|
+
logger.error('Operation [' + fn.name + '] threw response with NFS4_OK');
|
|
129
|
+
err = 10006;
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
FIND_STATUS_CODE: {
|
|
133
|
+
if (typeof err === 'number') {
|
|
134
|
+
if (err > 0 && err <= 16777215) {
|
|
135
|
+
status = err;
|
|
136
|
+
break FIND_STATUS_CODE;
|
|
137
|
+
}
|
|
138
|
+
status = 10006;
|
|
139
|
+
logger.error('Invalid status [code = ' + err + ', fn = ' + fn.name + ']');
|
|
140
|
+
break FIND_STATUS_CODE;
|
|
141
|
+
}
|
|
142
|
+
status = 10006;
|
|
143
|
+
logger.error(fn.name, err);
|
|
144
|
+
}
|
|
145
|
+
const opResponse = new Response(status);
|
|
146
|
+
resarray.push(opResponse);
|
|
147
|
+
}
|
|
148
|
+
if (status !== 0)
|
|
149
|
+
break OPS_LOOP;
|
|
150
|
+
}
|
|
151
|
+
return new msg.Nfsv4CompoundResponse(status, tag, resarray);
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
exports.Nfsv4CompoundProcCtx = Nfsv4CompoundProcCtx;
|
|
155
|
+
//# sourceMappingURL=Nfsv4CompoundProcCtx.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Nfsv4CompoundProcCtx.js","sourceRoot":"","sources":["../../../../src/nfs/v4/server/Nfsv4CompoundProcCtx.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
/// <reference types="node" />
|
|
2
|
+
import { Nfsv4Decoder } from '../Nfsv4Decoder';
|
|
3
|
+
import { Nfsv4FullEncoder } from '../Nfsv4FullEncoder';
|
|
4
|
+
import { RmRecordDecoder, RmRecordEncoder } from '../../../rm';
|
|
5
|
+
import { RpcCallMessage, RpcMessage, RpcMessageDecoder, RpcMessageEncoder } from '../../../rpc';
|
|
6
|
+
import type { Duplex } from 'node:stream';
|
|
7
|
+
import type { IWriter, IWriterGrowable } from '@jsonjoy.com/buffers/lib/types';
|
|
8
|
+
import type { Nfsv4Operations } from './operations/Nfsv4Operations';
|
|
9
|
+
export interface Nfsv4ConnectionOpts {
|
|
10
|
+
duplex: Duplex;
|
|
11
|
+
ops: Nfsv4Operations;
|
|
12
|
+
encoder?: Nfsv4FullEncoder;
|
|
13
|
+
decoder?: Nfsv4Decoder;
|
|
14
|
+
debug?: boolean;
|
|
15
|
+
logger?: Pick<typeof console, 'log' | 'error'>;
|
|
16
|
+
}
|
|
17
|
+
export declare class Nfsv4Connection {
|
|
18
|
+
closed: boolean;
|
|
19
|
+
maxIncomingMessage: number;
|
|
20
|
+
maxBackpressure: number;
|
|
21
|
+
protected lastXid: number;
|
|
22
|
+
readonly duplex: Duplex;
|
|
23
|
+
protected readonly rmDecoder: RmRecordDecoder;
|
|
24
|
+
protected readonly rpcDecoder: RpcMessageDecoder;
|
|
25
|
+
protected readonly nfsDecoder: Nfsv4Decoder;
|
|
26
|
+
protected readonly writer: IWriter & IWriterGrowable;
|
|
27
|
+
protected readonly rmEncoder: RmRecordEncoder;
|
|
28
|
+
protected readonly rpcEncoder: RpcMessageEncoder;
|
|
29
|
+
protected readonly nfsEncoder: Nfsv4FullEncoder;
|
|
30
|
+
debug: boolean;
|
|
31
|
+
logger: Pick<typeof console, 'log' | 'error'>;
|
|
32
|
+
readonly ops: Nfsv4Operations;
|
|
33
|
+
constructor(opts: Nfsv4ConnectionOpts);
|
|
34
|
+
protected onData(data: Uint8Array): void;
|
|
35
|
+
protected onRpcMessage(msg: RpcMessage): void;
|
|
36
|
+
protected onRpcCallMessage(procedure: RpcCallMessage): void;
|
|
37
|
+
private closeWithError;
|
|
38
|
+
close(): void;
|
|
39
|
+
private __uncorkTimer;
|
|
40
|
+
write(buf: Uint8Array): void;
|
|
41
|
+
send(): void;
|
|
42
|
+
}
|
|
@@ -0,0 +1,160 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Nfsv4Connection = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const Reader_1 = require("@jsonjoy.com/buffers/lib/Reader");
|
|
6
|
+
const Nfsv4Decoder_1 = require("../Nfsv4Decoder");
|
|
7
|
+
const Nfsv4FullEncoder_1 = require("../Nfsv4FullEncoder");
|
|
8
|
+
const rm_1 = require("../../../rm");
|
|
9
|
+
const rpc_1 = require("../../../rpc");
|
|
10
|
+
const msg = tslib_1.__importStar(require("../messages"));
|
|
11
|
+
const constants_1 = require("../constants");
|
|
12
|
+
const Nfsv4CompoundProcCtx_1 = require("./Nfsv4CompoundProcCtx");
|
|
13
|
+
const EMPTY_AUTH = new rpc_1.RpcOpaqueAuth(0, constants_1.EMPTY_READER);
|
|
14
|
+
class Nfsv4Connection {
|
|
15
|
+
constructor(opts) {
|
|
16
|
+
this.closed = false;
|
|
17
|
+
this.maxIncomingMessage = 2 * 1024 * 1024;
|
|
18
|
+
this.maxBackpressure = 2 * 1024 * 1024;
|
|
19
|
+
this.lastXid = 0;
|
|
20
|
+
this.__uncorkTimer = null;
|
|
21
|
+
this.debug = !!opts.debug;
|
|
22
|
+
this.logger = opts.logger || console;
|
|
23
|
+
const duplex = (this.duplex = opts.duplex);
|
|
24
|
+
this.ops = opts.ops;
|
|
25
|
+
this.rmDecoder = new rm_1.RmRecordDecoder();
|
|
26
|
+
this.rpcDecoder = new rpc_1.RpcMessageDecoder();
|
|
27
|
+
this.nfsDecoder = new Nfsv4Decoder_1.Nfsv4Decoder();
|
|
28
|
+
const nfsEncoder = (this.nfsEncoder = new Nfsv4FullEncoder_1.Nfsv4FullEncoder());
|
|
29
|
+
this.writer = nfsEncoder.writer;
|
|
30
|
+
this.rmEncoder = nfsEncoder.rmEncoder;
|
|
31
|
+
this.rpcEncoder = nfsEncoder.rpcEncoder;
|
|
32
|
+
duplex.on('data', this.onData.bind(this));
|
|
33
|
+
duplex.on('timeout', () => this.close());
|
|
34
|
+
duplex.on('close', (hadError) => {
|
|
35
|
+
this.close();
|
|
36
|
+
});
|
|
37
|
+
duplex.on('error', (err) => {
|
|
38
|
+
this.logger.error('SOCKET ERROR:', err);
|
|
39
|
+
this.close();
|
|
40
|
+
});
|
|
41
|
+
}
|
|
42
|
+
onData(data) {
|
|
43
|
+
const { rmDecoder, rpcDecoder } = this;
|
|
44
|
+
rmDecoder.push(data);
|
|
45
|
+
let record = rmDecoder.readRecord();
|
|
46
|
+
while (record) {
|
|
47
|
+
if (record.size()) {
|
|
48
|
+
const rpcMessage = rpcDecoder.decodeMessage(record);
|
|
49
|
+
if (rpcMessage)
|
|
50
|
+
this.onRpcMessage(rpcMessage);
|
|
51
|
+
else {
|
|
52
|
+
this.close();
|
|
53
|
+
return;
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
record = rmDecoder.readRecord();
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
onRpcMessage(msg) {
|
|
60
|
+
if (msg instanceof rpc_1.RpcCallMessage) {
|
|
61
|
+
this.lastXid = msg.xid;
|
|
62
|
+
this.onRpcCallMessage(msg);
|
|
63
|
+
}
|
|
64
|
+
else if (msg instanceof rpc_1.RpcAcceptedReplyMessage) {
|
|
65
|
+
throw new Error('Not implemented RpcAcceptedReplyMessage');
|
|
66
|
+
}
|
|
67
|
+
else if (msg instanceof rpc_1.RpcRejectedReplyMessage) {
|
|
68
|
+
throw new Error('Not implemented RpcRejectedReplyMessage');
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
onRpcCallMessage(procedure) {
|
|
72
|
+
const { debug, logger, writer, rmEncoder } = this;
|
|
73
|
+
const { xid, proc } = procedure;
|
|
74
|
+
switch (proc) {
|
|
75
|
+
case 1: {
|
|
76
|
+
if (debug)
|
|
77
|
+
logger.log(`\n<COMPOUND{${xid}}>`);
|
|
78
|
+
if (!(procedure.params instanceof Reader_1.Reader))
|
|
79
|
+
return;
|
|
80
|
+
const compound = this.nfsDecoder.decodeCompoundRequest(procedure.params);
|
|
81
|
+
if (compound instanceof msg.Nfsv4CompoundRequest) {
|
|
82
|
+
new Nfsv4CompoundProcCtx_1.Nfsv4CompoundProcCtx(this, compound)
|
|
83
|
+
.exec()
|
|
84
|
+
.then((procResponse) => {
|
|
85
|
+
if (debug)
|
|
86
|
+
logger.log(`</COMPOUND{${xid}}>`);
|
|
87
|
+
this.nfsEncoder.writeAcceptedCompoundReply(xid, EMPTY_AUTH, procResponse);
|
|
88
|
+
this.write(writer.flush());
|
|
89
|
+
})
|
|
90
|
+
.catch((err) => {
|
|
91
|
+
logger.error('NFS COMPOUND error:', xid, err);
|
|
92
|
+
this.nfsEncoder.writeRejectedReply(xid, 10006);
|
|
93
|
+
});
|
|
94
|
+
}
|
|
95
|
+
else
|
|
96
|
+
this.closeWithError(4);
|
|
97
|
+
break;
|
|
98
|
+
}
|
|
99
|
+
case 0: {
|
|
100
|
+
if (debug)
|
|
101
|
+
logger.log('NULL', procedure);
|
|
102
|
+
const state = rmEncoder.startRecord();
|
|
103
|
+
this.rpcEncoder.writeAcceptedReply(xid, EMPTY_AUTH, 0);
|
|
104
|
+
rmEncoder.endRecord(state);
|
|
105
|
+
this.write(writer.flush());
|
|
106
|
+
break;
|
|
107
|
+
}
|
|
108
|
+
default: {
|
|
109
|
+
if (debug)
|
|
110
|
+
logger.error(`Unknown procedure: ${proc}`);
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
closeWithError(error) {
|
|
115
|
+
if (this.debug)
|
|
116
|
+
this.logger.log(`Closing with error: RpcAcceptStat = ${error}, xid = ${this.lastXid}`);
|
|
117
|
+
const xid = this.lastXid;
|
|
118
|
+
if (xid) {
|
|
119
|
+
const state = this.rmEncoder.startRecord();
|
|
120
|
+
const verify = new rpc_1.RpcOpaqueAuth(0, constants_1.EMPTY_READER);
|
|
121
|
+
this.rpcEncoder.writeAcceptedReply(xid, verify, error);
|
|
122
|
+
this.rmEncoder.endRecord(state);
|
|
123
|
+
const bin = this.writer.flush();
|
|
124
|
+
this.duplex.write(bin);
|
|
125
|
+
}
|
|
126
|
+
this.close();
|
|
127
|
+
}
|
|
128
|
+
close() {
|
|
129
|
+
if (this.closed)
|
|
130
|
+
return;
|
|
131
|
+
this.closed = true;
|
|
132
|
+
clearImmediate(this.__uncorkTimer);
|
|
133
|
+
this.__uncorkTimer = null;
|
|
134
|
+
const duplex = this.duplex;
|
|
135
|
+
duplex.removeAllListeners();
|
|
136
|
+
if (!duplex.destroyed)
|
|
137
|
+
duplex.destroy();
|
|
138
|
+
}
|
|
139
|
+
write(buf) {
|
|
140
|
+
if (this.closed)
|
|
141
|
+
return;
|
|
142
|
+
const duplex = this.duplex;
|
|
143
|
+
if (duplex.writableLength > this.maxBackpressure) {
|
|
144
|
+
this.closeWithError(5);
|
|
145
|
+
return;
|
|
146
|
+
}
|
|
147
|
+
const __uncorkTimer = this.__uncorkTimer;
|
|
148
|
+
if (!__uncorkTimer)
|
|
149
|
+
duplex.cork();
|
|
150
|
+
duplex.write(buf);
|
|
151
|
+
if (!__uncorkTimer)
|
|
152
|
+
this.__uncorkTimer = setImmediate(() => {
|
|
153
|
+
this.__uncorkTimer = null;
|
|
154
|
+
duplex.uncork();
|
|
155
|
+
});
|
|
156
|
+
}
|
|
157
|
+
send() { }
|
|
158
|
+
}
|
|
159
|
+
exports.Nfsv4Connection = Nfsv4Connection;
|
|
160
|
+
//# sourceMappingURL=Nfsv4Connection.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Nfsv4Connection.js","sourceRoot":"","sources":["../../../../src/nfs/v4/server/Nfsv4Connection.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
/// <reference types="node" />
|
|
2
|
+
import * as net from 'net';
|
|
3
|
+
import { Logger } from './types';
|
|
4
|
+
import { Nfsv4Operations } from './operations/Nfsv4Operations';
|
|
5
|
+
export interface Nfsv4TcpServerOpts {
|
|
6
|
+
ops: Nfsv4Operations;
|
|
7
|
+
port?: number;
|
|
8
|
+
host?: string;
|
|
9
|
+
debug?: boolean;
|
|
10
|
+
logger?: Logger;
|
|
11
|
+
onError?: (err: Error) => void;
|
|
12
|
+
stopOnSigint?: boolean;
|
|
13
|
+
}
|
|
14
|
+
export declare class Nfsv4TcpServer {
|
|
15
|
+
static start(opts: Nfsv4TcpServerOpts): void;
|
|
16
|
+
readonly server: net.Server;
|
|
17
|
+
port: number;
|
|
18
|
+
host: string;
|
|
19
|
+
debug: boolean;
|
|
20
|
+
logger: Logger;
|
|
21
|
+
private sigintHandler?;
|
|
22
|
+
constructor(opts: Nfsv4TcpServerOpts);
|
|
23
|
+
private cleanup;
|
|
24
|
+
stop(): Promise<void>;
|
|
25
|
+
start(port?: number, host?: string): Promise<void>;
|
|
26
|
+
}
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Nfsv4TcpServer = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const net = tslib_1.__importStar(require("net"));
|
|
6
|
+
const Nfsv4Connection_1 = require("./Nfsv4Connection");
|
|
7
|
+
const PORT = Number(process.env.NFS_PORT) || Number(process.env.PORT) || 2049;
|
|
8
|
+
const HOST = process.env.NFS_HOST
|
|
9
|
+
? String(process.env.NFS_HOST)
|
|
10
|
+
: process.env.HOST
|
|
11
|
+
? String(process.env.HOST)
|
|
12
|
+
: '127.0.0.1';
|
|
13
|
+
class Nfsv4TcpServer {
|
|
14
|
+
static start(opts) {
|
|
15
|
+
const server = new Nfsv4TcpServer(opts);
|
|
16
|
+
server.start().catch(console.error);
|
|
17
|
+
}
|
|
18
|
+
constructor(opts) {
|
|
19
|
+
this.port = PORT;
|
|
20
|
+
this.host = HOST;
|
|
21
|
+
this.debug = false;
|
|
22
|
+
this.port = opts.port ?? PORT;
|
|
23
|
+
this.host = opts.host ?? HOST;
|
|
24
|
+
this.debug = opts.debug ?? false;
|
|
25
|
+
this.logger = opts.logger ?? console;
|
|
26
|
+
const ops = opts.ops;
|
|
27
|
+
const server = (this.server = new net.Server());
|
|
28
|
+
server.on('connection', (socket) => {
|
|
29
|
+
if (this.debug)
|
|
30
|
+
this.logger.log('New connection from', socket.remoteAddress, 'port', socket.remotePort);
|
|
31
|
+
new Nfsv4Connection_1.Nfsv4Connection({
|
|
32
|
+
duplex: socket,
|
|
33
|
+
ops,
|
|
34
|
+
debug: this.debug,
|
|
35
|
+
logger: this.logger,
|
|
36
|
+
});
|
|
37
|
+
});
|
|
38
|
+
server.on('error', opts.onError ??
|
|
39
|
+
((err) => {
|
|
40
|
+
if (this.debug)
|
|
41
|
+
this.logger.error('Server error:', err.message);
|
|
42
|
+
process.exit(1);
|
|
43
|
+
}));
|
|
44
|
+
if (opts.stopOnSigint ?? true) {
|
|
45
|
+
this.sigintHandler = () => {
|
|
46
|
+
if (this.debug)
|
|
47
|
+
this.logger.log('\nShutting down NFSv4 server...');
|
|
48
|
+
this.cleanup();
|
|
49
|
+
process.exit(0);
|
|
50
|
+
};
|
|
51
|
+
process.on('SIGINT', this.sigintHandler);
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
cleanup() {
|
|
55
|
+
if (this.sigintHandler) {
|
|
56
|
+
process.off('SIGINT', this.sigintHandler);
|
|
57
|
+
this.sigintHandler = undefined;
|
|
58
|
+
}
|
|
59
|
+
this.server.close((err) => {
|
|
60
|
+
if (this.debug && err)
|
|
61
|
+
this.logger.error('Error closing server:', err);
|
|
62
|
+
});
|
|
63
|
+
}
|
|
64
|
+
stop() {
|
|
65
|
+
return new Promise((resolve) => {
|
|
66
|
+
this.cleanup();
|
|
67
|
+
this.server.close(() => {
|
|
68
|
+
if (this.debug)
|
|
69
|
+
this.logger.log('NFSv4 server closed');
|
|
70
|
+
resolve();
|
|
71
|
+
});
|
|
72
|
+
});
|
|
73
|
+
}
|
|
74
|
+
start(port = this.port, host = this.host) {
|
|
75
|
+
if (this.debug)
|
|
76
|
+
this.logger.log(`Starting NFSv4 TCP server on ${host}:${port}...`);
|
|
77
|
+
return new Promise((resolve, reject) => {
|
|
78
|
+
const onError = (err) => reject(err);
|
|
79
|
+
const server = this.server;
|
|
80
|
+
server.on('error', onError);
|
|
81
|
+
server.listen(port, host, () => {
|
|
82
|
+
if (this.debug)
|
|
83
|
+
this.logger.log(`NFSv4 TCP server listening on ${host}:${port}`);
|
|
84
|
+
server.off('error', onError);
|
|
85
|
+
resolve();
|
|
86
|
+
});
|
|
87
|
+
});
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
exports.Nfsv4TcpServer = Nfsv4TcpServer;
|
|
91
|
+
//# sourceMappingURL=Nfsv4TcpServer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Nfsv4TcpServer.js","sourceRoot":"","sources":["../../../../src/nfs/v4/server/Nfsv4TcpServer.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type * as struct from '../../structs';
|
|
2
|
+
export declare class ByteRangeLock {
|
|
3
|
+
readonly stateid: struct.Nfsv4Stateid;
|
|
4
|
+
readonly path: string;
|
|
5
|
+
readonly locktype: number;
|
|
6
|
+
readonly offset: bigint;
|
|
7
|
+
readonly length: bigint;
|
|
8
|
+
readonly lockOwnerKey: string;
|
|
9
|
+
constructor(stateid: struct.Nfsv4Stateid, path: string, locktype: number, offset: bigint, length: bigint, lockOwnerKey: string);
|
|
10
|
+
overlaps(offset: bigint, length: bigint): boolean;
|
|
11
|
+
}
|