@jsonjoy.com/json-pack 1.17.0 → 1.18.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/nfs/v3/locks/NlmDecoder.d.ts +33 -0
- package/lib/nfs/v3/locks/NlmDecoder.js +209 -0
- package/lib/nfs/v3/locks/NlmDecoder.js.map +1 -0
- package/lib/nfs/v3/locks/NlmEncoder.d.ts +35 -0
- package/lib/nfs/v3/locks/NlmEncoder.js +182 -0
- package/lib/nfs/v3/locks/NlmEncoder.js.map +1 -0
- package/lib/nfs/v3/locks/constants.d.ts +39 -0
- package/lib/nfs/v3/locks/constants.js +3 -0
- package/lib/nfs/v3/locks/constants.js.map +1 -0
- package/lib/nfs/v3/locks/messages.d.ts +96 -0
- package/lib/nfs/v3/locks/messages.js +130 -0
- package/lib/nfs/v3/locks/messages.js.map +1 -0
- package/lib/nfs/v3/locks/structs.d.ts +31 -0
- package/lib/nfs/v3/locks/structs.js +42 -0
- package/lib/nfs/v3/locks/structs.js.map +1 -0
- package/lib/nfs/v3/mount/MountDecoder.d.ts +21 -0
- package/lib/nfs/v3/mount/MountDecoder.js +135 -0
- package/lib/nfs/v3/mount/MountDecoder.js.map +1 -0
- package/lib/nfs/v3/mount/MountEncoder.d.ts +23 -0
- package/lib/nfs/v3/mount/MountEncoder.js +125 -0
- package/lib/nfs/v3/mount/MountEncoder.js.map +1 -0
- package/lib/nfs/v3/mount/constants.d.ts +27 -0
- package/lib/nfs/v3/mount/constants.js +3 -0
- package/lib/nfs/v3/mount/constants.js.map +1 -0
- package/lib/nfs/v3/mount/messages.d.ts +37 -0
- package/lib/nfs/v3/mount/messages.js +51 -0
- package/lib/nfs/v3/mount/messages.js.map +1 -0
- package/lib/nfs/v3/mount/structs.d.ts +22 -0
- package/lib/nfs/v3/mount/structs.js +33 -0
- package/lib/nfs/v3/mount/structs.js.map +1 -0
- package/package.json +1 -1
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Nlm4FreeAllRequest = exports.Nlm4NmLockRequest = exports.Nlm4UnshareRequest = exports.Nlm4ShareResponse = exports.Nlm4ShareRequest = exports.Nlm4ShareArgs = exports.Nlm4GrantedRequest = exports.Nlm4UnlockRequest = exports.Nlm4UnlockArgs = exports.Nlm4CancelRequest = exports.Nlm4CancelArgs = exports.Nlm4Response = exports.Nlm4LockRequest = exports.Nlm4LockArgs = exports.Nlm4TestResponse = exports.Nlm4TestDenied = exports.Nlm4TestRequest = exports.Nlm4TestArgs = void 0;
|
|
4
|
+
class Nlm4TestArgs {
|
|
5
|
+
constructor(cookie, exclusive, lock) {
|
|
6
|
+
this.cookie = cookie;
|
|
7
|
+
this.exclusive = exclusive;
|
|
8
|
+
this.lock = lock;
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
exports.Nlm4TestArgs = Nlm4TestArgs;
|
|
12
|
+
class Nlm4TestRequest {
|
|
13
|
+
constructor(args) {
|
|
14
|
+
this.args = args;
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
exports.Nlm4TestRequest = Nlm4TestRequest;
|
|
18
|
+
class Nlm4TestDenied {
|
|
19
|
+
constructor(holder) {
|
|
20
|
+
this.holder = holder;
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
exports.Nlm4TestDenied = Nlm4TestDenied;
|
|
24
|
+
class Nlm4TestResponse {
|
|
25
|
+
constructor(cookie, stat, holder) {
|
|
26
|
+
this.cookie = cookie;
|
|
27
|
+
this.stat = stat;
|
|
28
|
+
this.holder = holder;
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
exports.Nlm4TestResponse = Nlm4TestResponse;
|
|
32
|
+
class Nlm4LockArgs {
|
|
33
|
+
constructor(cookie, block, exclusive, lock, reclaim, state) {
|
|
34
|
+
this.cookie = cookie;
|
|
35
|
+
this.block = block;
|
|
36
|
+
this.exclusive = exclusive;
|
|
37
|
+
this.lock = lock;
|
|
38
|
+
this.reclaim = reclaim;
|
|
39
|
+
this.state = state;
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
exports.Nlm4LockArgs = Nlm4LockArgs;
|
|
43
|
+
class Nlm4LockRequest {
|
|
44
|
+
constructor(args) {
|
|
45
|
+
this.args = args;
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
exports.Nlm4LockRequest = Nlm4LockRequest;
|
|
49
|
+
class Nlm4Response {
|
|
50
|
+
constructor(cookie, stat) {
|
|
51
|
+
this.cookie = cookie;
|
|
52
|
+
this.stat = stat;
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
exports.Nlm4Response = Nlm4Response;
|
|
56
|
+
class Nlm4CancelArgs {
|
|
57
|
+
constructor(cookie, block, exclusive, lock) {
|
|
58
|
+
this.cookie = cookie;
|
|
59
|
+
this.block = block;
|
|
60
|
+
this.exclusive = exclusive;
|
|
61
|
+
this.lock = lock;
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
exports.Nlm4CancelArgs = Nlm4CancelArgs;
|
|
65
|
+
class Nlm4CancelRequest {
|
|
66
|
+
constructor(args) {
|
|
67
|
+
this.args = args;
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
exports.Nlm4CancelRequest = Nlm4CancelRequest;
|
|
71
|
+
class Nlm4UnlockArgs {
|
|
72
|
+
constructor(cookie, lock) {
|
|
73
|
+
this.cookie = cookie;
|
|
74
|
+
this.lock = lock;
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
exports.Nlm4UnlockArgs = Nlm4UnlockArgs;
|
|
78
|
+
class Nlm4UnlockRequest {
|
|
79
|
+
constructor(args) {
|
|
80
|
+
this.args = args;
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
exports.Nlm4UnlockRequest = Nlm4UnlockRequest;
|
|
84
|
+
class Nlm4GrantedRequest {
|
|
85
|
+
constructor(args) {
|
|
86
|
+
this.args = args;
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
exports.Nlm4GrantedRequest = Nlm4GrantedRequest;
|
|
90
|
+
class Nlm4ShareArgs {
|
|
91
|
+
constructor(cookie, share, reclaim) {
|
|
92
|
+
this.cookie = cookie;
|
|
93
|
+
this.share = share;
|
|
94
|
+
this.reclaim = reclaim;
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
exports.Nlm4ShareArgs = Nlm4ShareArgs;
|
|
98
|
+
class Nlm4ShareRequest {
|
|
99
|
+
constructor(args) {
|
|
100
|
+
this.args = args;
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
exports.Nlm4ShareRequest = Nlm4ShareRequest;
|
|
104
|
+
class Nlm4ShareResponse {
|
|
105
|
+
constructor(cookie, stat, sequence) {
|
|
106
|
+
this.cookie = cookie;
|
|
107
|
+
this.stat = stat;
|
|
108
|
+
this.sequence = sequence;
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
exports.Nlm4ShareResponse = Nlm4ShareResponse;
|
|
112
|
+
class Nlm4UnshareRequest {
|
|
113
|
+
constructor(args) {
|
|
114
|
+
this.args = args;
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
exports.Nlm4UnshareRequest = Nlm4UnshareRequest;
|
|
118
|
+
class Nlm4NmLockRequest {
|
|
119
|
+
constructor(args) {
|
|
120
|
+
this.args = args;
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
exports.Nlm4NmLockRequest = Nlm4NmLockRequest;
|
|
124
|
+
class Nlm4FreeAllRequest {
|
|
125
|
+
constructor(notify) {
|
|
126
|
+
this.notify = notify;
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
exports.Nlm4FreeAllRequest = Nlm4FreeAllRequest;
|
|
130
|
+
//# sourceMappingURL=messages.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"messages.js","sourceRoot":"","sources":["../../../../src/nfs/v3/locks/messages.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import type { Reader } from '@jsonjoy.com/buffers/lib/Reader';
|
|
2
|
+
export declare class Nlm4Holder {
|
|
3
|
+
readonly exclusive: boolean;
|
|
4
|
+
readonly svid: number;
|
|
5
|
+
readonly oh: Reader;
|
|
6
|
+
readonly offset: bigint;
|
|
7
|
+
readonly length: bigint;
|
|
8
|
+
constructor(exclusive: boolean, svid: number, oh: Reader, offset: bigint, length: bigint);
|
|
9
|
+
}
|
|
10
|
+
export declare class Nlm4Lock {
|
|
11
|
+
readonly callerName: string;
|
|
12
|
+
readonly fh: Reader;
|
|
13
|
+
readonly oh: Reader;
|
|
14
|
+
readonly svid: number;
|
|
15
|
+
readonly offset: bigint;
|
|
16
|
+
readonly length: bigint;
|
|
17
|
+
constructor(callerName: string, fh: Reader, oh: Reader, svid: number, offset: bigint, length: bigint);
|
|
18
|
+
}
|
|
19
|
+
export declare class Nlm4Share {
|
|
20
|
+
readonly callerName: string;
|
|
21
|
+
readonly fh: Reader;
|
|
22
|
+
readonly oh: Reader;
|
|
23
|
+
readonly mode: number;
|
|
24
|
+
readonly access: number;
|
|
25
|
+
constructor(callerName: string, fh: Reader, oh: Reader, mode: number, access: number);
|
|
26
|
+
}
|
|
27
|
+
export declare class Nlm4Notify {
|
|
28
|
+
readonly name: string;
|
|
29
|
+
readonly state: number;
|
|
30
|
+
constructor(name: string, state: number);
|
|
31
|
+
}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Nlm4Notify = exports.Nlm4Share = exports.Nlm4Lock = exports.Nlm4Holder = void 0;
|
|
4
|
+
class Nlm4Holder {
|
|
5
|
+
constructor(exclusive, svid, oh, offset, length) {
|
|
6
|
+
this.exclusive = exclusive;
|
|
7
|
+
this.svid = svid;
|
|
8
|
+
this.oh = oh;
|
|
9
|
+
this.offset = offset;
|
|
10
|
+
this.length = length;
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
exports.Nlm4Holder = Nlm4Holder;
|
|
14
|
+
class Nlm4Lock {
|
|
15
|
+
constructor(callerName, fh, oh, svid, offset, length) {
|
|
16
|
+
this.callerName = callerName;
|
|
17
|
+
this.fh = fh;
|
|
18
|
+
this.oh = oh;
|
|
19
|
+
this.svid = svid;
|
|
20
|
+
this.offset = offset;
|
|
21
|
+
this.length = length;
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
exports.Nlm4Lock = Nlm4Lock;
|
|
25
|
+
class Nlm4Share {
|
|
26
|
+
constructor(callerName, fh, oh, mode, access) {
|
|
27
|
+
this.callerName = callerName;
|
|
28
|
+
this.fh = fh;
|
|
29
|
+
this.oh = oh;
|
|
30
|
+
this.mode = mode;
|
|
31
|
+
this.access = access;
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
exports.Nlm4Share = Nlm4Share;
|
|
35
|
+
class Nlm4Notify {
|
|
36
|
+
constructor(name, state) {
|
|
37
|
+
this.name = name;
|
|
38
|
+
this.state = state;
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
exports.Nlm4Notify = Nlm4Notify;
|
|
42
|
+
//# sourceMappingURL=structs.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"structs.js","sourceRoot":"","sources":["../../../../src/nfs/v3/locks/structs.ts"],"names":[],"mappings":";;;AASA,MAAa,UAAU;IACrB,YACkB,SAAkB,EAClB,IAAY,EACZ,EAAU,EACV,MAAc,EACd,MAAc;QAJd,cAAS,GAAT,SAAS,CAAS;QAClB,SAAI,GAAJ,IAAI,CAAQ;QACZ,OAAE,GAAF,EAAE,CAAQ;QACV,WAAM,GAAN,MAAM,CAAQ;QACd,WAAM,GAAN,MAAM,CAAQ;IAC7B,CAAC;CACL;AARD,gCAQC;AAKD,MAAa,QAAQ;IACnB,YACkB,UAAkB,EAClB,EAAU,EACV,EAAU,EACV,IAAY,EACZ,MAAc,EACd,MAAc;QALd,eAAU,GAAV,UAAU,CAAQ;QAClB,OAAE,GAAF,EAAE,CAAQ;QACV,OAAE,GAAF,EAAE,CAAQ;QACV,SAAI,GAAJ,IAAI,CAAQ;QACZ,WAAM,GAAN,MAAM,CAAQ;QACd,WAAM,GAAN,MAAM,CAAQ;IAC7B,CAAC;CACL;AATD,4BASC;AAKD,MAAa,SAAS;IACpB,YACkB,UAAkB,EAClB,EAAU,EACV,EAAU,EACV,IAAY,EACZ,MAAc;QAJd,eAAU,GAAV,UAAU,CAAQ;QAClB,OAAE,GAAF,EAAE,CAAQ;QACV,OAAE,GAAF,EAAE,CAAQ;QACV,SAAI,GAAJ,IAAI,CAAQ;QACZ,WAAM,GAAN,MAAM,CAAQ;IAC7B,CAAC;CACL;AARD,8BAQC;AAKD,MAAa,UAAU;IACrB,YACkB,IAAY,EACZ,KAAa;QADb,SAAI,GAAJ,IAAI,CAAQ;QACZ,UAAK,GAAL,KAAK,CAAQ;IAC5B,CAAC;CACL;AALD,gCAKC"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { Reader } from '@jsonjoy.com/buffers/lib/Reader';
|
|
2
|
+
import { XdrDecoder } from '../../../xdr/XdrDecoder';
|
|
3
|
+
import { MountProc } from './constants';
|
|
4
|
+
import * as msg from './messages';
|
|
5
|
+
export declare class MountDecoder {
|
|
6
|
+
protected readonly xdr: XdrDecoder;
|
|
7
|
+
constructor(reader?: Reader);
|
|
8
|
+
decodeMessage(reader: Reader, proc: MountProc, isRequest: boolean): msg.MountMessage | undefined;
|
|
9
|
+
private decodeRequest;
|
|
10
|
+
private decodeResponse;
|
|
11
|
+
private readFhandle3;
|
|
12
|
+
private readDirpath;
|
|
13
|
+
private readMountBody;
|
|
14
|
+
private readGroupNode;
|
|
15
|
+
private readExportNode;
|
|
16
|
+
private decodeMntRequest;
|
|
17
|
+
private decodeMntResponse;
|
|
18
|
+
private decodeDumpResponse;
|
|
19
|
+
private decodeUmntRequest;
|
|
20
|
+
private decodeExportResponse;
|
|
21
|
+
}
|
|
@@ -0,0 +1,135 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.MountDecoder = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const Reader_1 = require("@jsonjoy.com/buffers/lib/Reader");
|
|
6
|
+
const XdrDecoder_1 = require("../../../xdr/XdrDecoder");
|
|
7
|
+
const errors_1 = require("../errors");
|
|
8
|
+
const msg = tslib_1.__importStar(require("./messages"));
|
|
9
|
+
const structs = tslib_1.__importStar(require("./structs"));
|
|
10
|
+
class MountDecoder {
|
|
11
|
+
constructor(reader = new Reader_1.Reader()) {
|
|
12
|
+
this.xdr = new XdrDecoder_1.XdrDecoder(reader);
|
|
13
|
+
}
|
|
14
|
+
decodeMessage(reader, proc, isRequest) {
|
|
15
|
+
this.xdr.reader = reader;
|
|
16
|
+
const startPos = reader.x;
|
|
17
|
+
try {
|
|
18
|
+
if (isRequest) {
|
|
19
|
+
return this.decodeRequest(proc);
|
|
20
|
+
}
|
|
21
|
+
else {
|
|
22
|
+
return this.decodeResponse(proc);
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
catch (err) {
|
|
26
|
+
if (err instanceof RangeError) {
|
|
27
|
+
reader.x = startPos;
|
|
28
|
+
return undefined;
|
|
29
|
+
}
|
|
30
|
+
throw err;
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
decodeRequest(proc) {
|
|
34
|
+
switch (proc) {
|
|
35
|
+
case 0:
|
|
36
|
+
return undefined;
|
|
37
|
+
case 1:
|
|
38
|
+
return this.decodeMntRequest();
|
|
39
|
+
case 2:
|
|
40
|
+
return new msg.MountDumpRequest();
|
|
41
|
+
case 3:
|
|
42
|
+
return this.decodeUmntRequest();
|
|
43
|
+
case 4:
|
|
44
|
+
return new msg.MountUmntallRequest();
|
|
45
|
+
case 5:
|
|
46
|
+
return new msg.MountExportRequest();
|
|
47
|
+
default:
|
|
48
|
+
throw new errors_1.Nfsv3DecodingError(`Unknown MOUNT procedure: ${proc}`);
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
decodeResponse(proc) {
|
|
52
|
+
switch (proc) {
|
|
53
|
+
case 0:
|
|
54
|
+
return undefined;
|
|
55
|
+
case 1:
|
|
56
|
+
return this.decodeMntResponse();
|
|
57
|
+
case 2:
|
|
58
|
+
return this.decodeDumpResponse();
|
|
59
|
+
case 3:
|
|
60
|
+
return undefined;
|
|
61
|
+
case 4:
|
|
62
|
+
return undefined;
|
|
63
|
+
case 5:
|
|
64
|
+
return this.decodeExportResponse();
|
|
65
|
+
default:
|
|
66
|
+
throw new errors_1.Nfsv3DecodingError(`Unknown MOUNT procedure: ${proc}`);
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
readFhandle3() {
|
|
70
|
+
const data = this.xdr.readVarlenOpaque();
|
|
71
|
+
return new structs.MountFhandle3(new Reader_1.Reader(data));
|
|
72
|
+
}
|
|
73
|
+
readDirpath() {
|
|
74
|
+
return this.xdr.readString();
|
|
75
|
+
}
|
|
76
|
+
readMountBody() {
|
|
77
|
+
const valueFollows = this.xdr.readBoolean();
|
|
78
|
+
if (!valueFollows)
|
|
79
|
+
return undefined;
|
|
80
|
+
const hostname = this.xdr.readString();
|
|
81
|
+
const directory = this.readDirpath();
|
|
82
|
+
const next = this.readMountBody();
|
|
83
|
+
return new structs.MountBody(hostname, directory, next);
|
|
84
|
+
}
|
|
85
|
+
readGroupNode() {
|
|
86
|
+
const valueFollows = this.xdr.readBoolean();
|
|
87
|
+
if (!valueFollows)
|
|
88
|
+
return undefined;
|
|
89
|
+
const name = this.xdr.readString();
|
|
90
|
+
const next = this.readGroupNode();
|
|
91
|
+
return new structs.MountGroupNode(name, next);
|
|
92
|
+
}
|
|
93
|
+
readExportNode() {
|
|
94
|
+
const valueFollows = this.xdr.readBoolean();
|
|
95
|
+
if (!valueFollows)
|
|
96
|
+
return undefined;
|
|
97
|
+
const dir = this.readDirpath();
|
|
98
|
+
const groups = this.readGroupNode();
|
|
99
|
+
const next = this.readExportNode();
|
|
100
|
+
return new structs.MountExportNode(dir, groups, next);
|
|
101
|
+
}
|
|
102
|
+
decodeMntRequest() {
|
|
103
|
+
const dirpath = this.readDirpath();
|
|
104
|
+
return new msg.MountMntRequest(dirpath);
|
|
105
|
+
}
|
|
106
|
+
decodeMntResponse() {
|
|
107
|
+
const xdr = this.xdr;
|
|
108
|
+
const status = xdr.readUnsignedInt();
|
|
109
|
+
if (status !== 0) {
|
|
110
|
+
return new msg.MountMntResponse(status);
|
|
111
|
+
}
|
|
112
|
+
const fhandle = this.readFhandle3();
|
|
113
|
+
const authFlavorsCount = xdr.readUnsignedInt();
|
|
114
|
+
const authFlavors = [];
|
|
115
|
+
for (let i = 0; i < authFlavorsCount; i++) {
|
|
116
|
+
authFlavors.push(xdr.readUnsignedInt());
|
|
117
|
+
}
|
|
118
|
+
const mountinfo = new msg.MountMntResOk(fhandle, authFlavors);
|
|
119
|
+
return new msg.MountMntResponse(status, mountinfo);
|
|
120
|
+
}
|
|
121
|
+
decodeDumpResponse() {
|
|
122
|
+
const mountlist = this.readMountBody();
|
|
123
|
+
return new msg.MountDumpResponse(mountlist);
|
|
124
|
+
}
|
|
125
|
+
decodeUmntRequest() {
|
|
126
|
+
const dirpath = this.readDirpath();
|
|
127
|
+
return new msg.MountUmntRequest(dirpath);
|
|
128
|
+
}
|
|
129
|
+
decodeExportResponse() {
|
|
130
|
+
const exports = this.readExportNode();
|
|
131
|
+
return new msg.MountExportResponse(exports);
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
exports.MountDecoder = MountDecoder;
|
|
135
|
+
//# sourceMappingURL=MountDecoder.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MountDecoder.js","sourceRoot":"","sources":["../../../../src/nfs/v3/mount/MountDecoder.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { XdrEncoder } from '../../../xdr/XdrEncoder';
|
|
2
|
+
import { MountProc } from './constants';
|
|
3
|
+
import * as msg from './messages';
|
|
4
|
+
import type { IWriter, IWriterGrowable } from '@jsonjoy.com/util/lib/buffers';
|
|
5
|
+
export declare class MountEncoder<W extends IWriter & IWriterGrowable = IWriter & IWriterGrowable> {
|
|
6
|
+
readonly writer: W;
|
|
7
|
+
protected readonly xdr: XdrEncoder;
|
|
8
|
+
constructor(writer?: W);
|
|
9
|
+
encodeMessage(message: msg.MountMessage, proc: MountProc, isRequest: boolean): Uint8Array;
|
|
10
|
+
writeMessage(message: msg.MountMessage, proc: MountProc, isRequest: boolean): void;
|
|
11
|
+
private writeRequest;
|
|
12
|
+
private writeResponse;
|
|
13
|
+
private writeFhandle3;
|
|
14
|
+
private writeDirpath;
|
|
15
|
+
private writeMountBody;
|
|
16
|
+
private writeGroupNode;
|
|
17
|
+
private writeExportNode;
|
|
18
|
+
private writeMntRequest;
|
|
19
|
+
private writeMntResponse;
|
|
20
|
+
private writeDumpResponse;
|
|
21
|
+
private writeUmntRequest;
|
|
22
|
+
private writeExportResponse;
|
|
23
|
+
}
|
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.MountEncoder = void 0;
|
|
4
|
+
const Writer_1 = require("@jsonjoy.com/util/lib/buffers/Writer");
|
|
5
|
+
const XdrEncoder_1 = require("../../../xdr/XdrEncoder");
|
|
6
|
+
const errors_1 = require("../errors");
|
|
7
|
+
class MountEncoder {
|
|
8
|
+
constructor(writer = new Writer_1.Writer()) {
|
|
9
|
+
this.writer = writer;
|
|
10
|
+
this.xdr = new XdrEncoder_1.XdrEncoder(writer);
|
|
11
|
+
}
|
|
12
|
+
encodeMessage(message, proc, isRequest) {
|
|
13
|
+
if (isRequest)
|
|
14
|
+
this.writeRequest(message, proc);
|
|
15
|
+
else
|
|
16
|
+
this.writeResponse(message, proc);
|
|
17
|
+
return this.writer.flush();
|
|
18
|
+
}
|
|
19
|
+
writeMessage(message, proc, isRequest) {
|
|
20
|
+
if (isRequest)
|
|
21
|
+
this.writeRequest(message, proc);
|
|
22
|
+
else
|
|
23
|
+
this.writeResponse(message, proc);
|
|
24
|
+
}
|
|
25
|
+
writeRequest(request, proc) {
|
|
26
|
+
switch (proc) {
|
|
27
|
+
case 0:
|
|
28
|
+
return;
|
|
29
|
+
case 1:
|
|
30
|
+
return this.writeMntRequest(request);
|
|
31
|
+
case 2:
|
|
32
|
+
return;
|
|
33
|
+
case 3:
|
|
34
|
+
return this.writeUmntRequest(request);
|
|
35
|
+
case 4:
|
|
36
|
+
return;
|
|
37
|
+
case 5:
|
|
38
|
+
return;
|
|
39
|
+
default:
|
|
40
|
+
throw new errors_1.Nfsv3EncodingError(`Unknown MOUNT procedure: ${proc}`);
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
writeResponse(response, proc) {
|
|
44
|
+
switch (proc) {
|
|
45
|
+
case 0:
|
|
46
|
+
return;
|
|
47
|
+
case 1:
|
|
48
|
+
return this.writeMntResponse(response);
|
|
49
|
+
case 2:
|
|
50
|
+
return this.writeDumpResponse(response);
|
|
51
|
+
case 3:
|
|
52
|
+
return;
|
|
53
|
+
case 4:
|
|
54
|
+
return;
|
|
55
|
+
case 5:
|
|
56
|
+
return this.writeExportResponse(response);
|
|
57
|
+
default:
|
|
58
|
+
throw new errors_1.Nfsv3EncodingError(`Unknown MOUNT procedure: ${proc}`);
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
writeFhandle3(fh) {
|
|
62
|
+
const data = fh.data.uint8;
|
|
63
|
+
this.xdr.writeVarlenOpaque(data);
|
|
64
|
+
}
|
|
65
|
+
writeDirpath(path) {
|
|
66
|
+
this.xdr.writeStr(path);
|
|
67
|
+
}
|
|
68
|
+
writeMountBody(body) {
|
|
69
|
+
const xdr = this.xdr;
|
|
70
|
+
if (!body) {
|
|
71
|
+
xdr.writeBoolean(false);
|
|
72
|
+
return;
|
|
73
|
+
}
|
|
74
|
+
xdr.writeBoolean(true);
|
|
75
|
+
xdr.writeStr(body.hostname);
|
|
76
|
+
this.writeDirpath(body.directory);
|
|
77
|
+
this.writeMountBody(body.next);
|
|
78
|
+
}
|
|
79
|
+
writeGroupNode(group) {
|
|
80
|
+
const xdr = this.xdr;
|
|
81
|
+
if (!group) {
|
|
82
|
+
xdr.writeBoolean(false);
|
|
83
|
+
return;
|
|
84
|
+
}
|
|
85
|
+
xdr.writeBoolean(true);
|
|
86
|
+
xdr.writeStr(group.name);
|
|
87
|
+
this.writeGroupNode(group.next);
|
|
88
|
+
}
|
|
89
|
+
writeExportNode(exportNode) {
|
|
90
|
+
const xdr = this.xdr;
|
|
91
|
+
if (!exportNode) {
|
|
92
|
+
xdr.writeBoolean(false);
|
|
93
|
+
return;
|
|
94
|
+
}
|
|
95
|
+
xdr.writeBoolean(true);
|
|
96
|
+
this.writeDirpath(exportNode.dir);
|
|
97
|
+
this.writeGroupNode(exportNode.groups);
|
|
98
|
+
this.writeExportNode(exportNode.next);
|
|
99
|
+
}
|
|
100
|
+
writeMntRequest(req) {
|
|
101
|
+
this.writeDirpath(req.dirpath);
|
|
102
|
+
}
|
|
103
|
+
writeMntResponse(res) {
|
|
104
|
+
const xdr = this.xdr;
|
|
105
|
+
xdr.writeUnsignedInt(res.status);
|
|
106
|
+
if (res.status === 0 && res.mountinfo) {
|
|
107
|
+
this.writeFhandle3(res.mountinfo.fhandle);
|
|
108
|
+
xdr.writeUnsignedInt(res.mountinfo.authFlavors.length);
|
|
109
|
+
for (const flavor of res.mountinfo.authFlavors) {
|
|
110
|
+
xdr.writeUnsignedInt(flavor);
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
writeDumpResponse(res) {
|
|
115
|
+
this.writeMountBody(res.mountlist);
|
|
116
|
+
}
|
|
117
|
+
writeUmntRequest(req) {
|
|
118
|
+
this.writeDirpath(req.dirpath);
|
|
119
|
+
}
|
|
120
|
+
writeExportResponse(res) {
|
|
121
|
+
this.writeExportNode(res.exports);
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
exports.MountEncoder = MountEncoder;
|
|
125
|
+
//# sourceMappingURL=MountEncoder.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MountEncoder.js","sourceRoot":"","sources":["../../../../src/nfs/v3/mount/MountEncoder.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
export declare const enum MountConst {
|
|
2
|
+
PROGRAM = 100005,
|
|
3
|
+
VERSION = 3,
|
|
4
|
+
MNTPATHLEN = 1024,
|
|
5
|
+
MNTNAMLEN = 255,
|
|
6
|
+
FHSIZE3 = 64
|
|
7
|
+
}
|
|
8
|
+
export declare const enum MountProc {
|
|
9
|
+
NULL = 0,
|
|
10
|
+
MNT = 1,
|
|
11
|
+
DUMP = 2,
|
|
12
|
+
UMNT = 3,
|
|
13
|
+
UMNTALL = 4,
|
|
14
|
+
EXPORT = 5
|
|
15
|
+
}
|
|
16
|
+
export declare const enum MountStat {
|
|
17
|
+
MNT3_OK = 0,
|
|
18
|
+
MNT3ERR_PERM = 1,
|
|
19
|
+
MNT3ERR_NOENT = 2,
|
|
20
|
+
MNT3ERR_IO = 5,
|
|
21
|
+
MNT3ERR_ACCES = 13,
|
|
22
|
+
MNT3ERR_NOTDIR = 20,
|
|
23
|
+
MNT3ERR_INVAL = 22,
|
|
24
|
+
MNT3ERR_NAMETOOLONG = 63,
|
|
25
|
+
MNT3ERR_NOTSUPP = 10004,
|
|
26
|
+
MNT3ERR_SERVERFAULT = 10006
|
|
27
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../src/nfs/v3/mount/constants.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { MountStat } from './constants';
|
|
2
|
+
import type * as stucts from './structs';
|
|
3
|
+
export type MountMessage = MountRequest | MountResponse;
|
|
4
|
+
export type MountRequest = MountMntRequest | MountUmntRequest | MountDumpRequest | MountUmntallRequest | MountExportRequest;
|
|
5
|
+
export type MountResponse = MountMntResponse | MountDumpResponse | MountExportResponse;
|
|
6
|
+
export declare class MountMntRequest {
|
|
7
|
+
readonly dirpath: string;
|
|
8
|
+
constructor(dirpath: string);
|
|
9
|
+
}
|
|
10
|
+
export declare class MountMntResOk {
|
|
11
|
+
readonly fhandle: stucts.MountFhandle3;
|
|
12
|
+
readonly authFlavors: number[];
|
|
13
|
+
constructor(fhandle: stucts.MountFhandle3, authFlavors: number[]);
|
|
14
|
+
}
|
|
15
|
+
export declare class MountMntResponse {
|
|
16
|
+
readonly status: MountStat;
|
|
17
|
+
readonly mountinfo?: MountMntResOk | undefined;
|
|
18
|
+
constructor(status: MountStat, mountinfo?: MountMntResOk | undefined);
|
|
19
|
+
}
|
|
20
|
+
export declare class MountDumpRequest {
|
|
21
|
+
}
|
|
22
|
+
export declare class MountDumpResponse {
|
|
23
|
+
readonly mountlist?: stucts.MountBody | undefined;
|
|
24
|
+
constructor(mountlist?: stucts.MountBody | undefined);
|
|
25
|
+
}
|
|
26
|
+
export declare class MountUmntRequest {
|
|
27
|
+
readonly dirpath: string;
|
|
28
|
+
constructor(dirpath: string);
|
|
29
|
+
}
|
|
30
|
+
export declare class MountUmntallRequest {
|
|
31
|
+
}
|
|
32
|
+
export declare class MountExportRequest {
|
|
33
|
+
}
|
|
34
|
+
export declare class MountExportResponse {
|
|
35
|
+
readonly exports?: stucts.MountExportNode | undefined;
|
|
36
|
+
constructor(exports?: stucts.MountExportNode | undefined);
|
|
37
|
+
}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.MountExportResponse = exports.MountExportRequest = exports.MountUmntallRequest = exports.MountUmntRequest = exports.MountDumpResponse = exports.MountDumpRequest = exports.MountMntResponse = exports.MountMntResOk = exports.MountMntRequest = void 0;
|
|
4
|
+
class MountMntRequest {
|
|
5
|
+
constructor(dirpath) {
|
|
6
|
+
this.dirpath = dirpath;
|
|
7
|
+
}
|
|
8
|
+
}
|
|
9
|
+
exports.MountMntRequest = MountMntRequest;
|
|
10
|
+
class MountMntResOk {
|
|
11
|
+
constructor(fhandle, authFlavors) {
|
|
12
|
+
this.fhandle = fhandle;
|
|
13
|
+
this.authFlavors = authFlavors;
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
exports.MountMntResOk = MountMntResOk;
|
|
17
|
+
class MountMntResponse {
|
|
18
|
+
constructor(status, mountinfo) {
|
|
19
|
+
this.status = status;
|
|
20
|
+
this.mountinfo = mountinfo;
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
exports.MountMntResponse = MountMntResponse;
|
|
24
|
+
class MountDumpRequest {
|
|
25
|
+
}
|
|
26
|
+
exports.MountDumpRequest = MountDumpRequest;
|
|
27
|
+
class MountDumpResponse {
|
|
28
|
+
constructor(mountlist) {
|
|
29
|
+
this.mountlist = mountlist;
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
exports.MountDumpResponse = MountDumpResponse;
|
|
33
|
+
class MountUmntRequest {
|
|
34
|
+
constructor(dirpath) {
|
|
35
|
+
this.dirpath = dirpath;
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
exports.MountUmntRequest = MountUmntRequest;
|
|
39
|
+
class MountUmntallRequest {
|
|
40
|
+
}
|
|
41
|
+
exports.MountUmntallRequest = MountUmntallRequest;
|
|
42
|
+
class MountExportRequest {
|
|
43
|
+
}
|
|
44
|
+
exports.MountExportRequest = MountExportRequest;
|
|
45
|
+
class MountExportResponse {
|
|
46
|
+
constructor(exports) {
|
|
47
|
+
this.exports = exports;
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
exports.MountExportResponse = MountExportResponse;
|
|
51
|
+
//# sourceMappingURL=messages.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"messages.js","sourceRoot":"","sources":["../../../../src/nfs/v3/mount/messages.ts"],"names":[],"mappings":";;;AAqBA,MAAa,eAAe;IAC1B,YAA4B,OAAe;QAAf,YAAO,GAAP,OAAO,CAAQ;IAAG,CAAC;CAChD;AAFD,0CAEC;AAKD,MAAa,aAAa;IACxB,YACkB,OAA6B,EAC7B,WAAqB;QADrB,YAAO,GAAP,OAAO,CAAsB;QAC7B,gBAAW,GAAX,WAAW,CAAU;IACpC,CAAC;CACL;AALD,sCAKC;AAKD,MAAa,gBAAgB;IAC3B,YACkB,MAAiB,EACjB,SAAyB;QADzB,WAAM,GAAN,MAAM,CAAW;QACjB,cAAS,GAAT,SAAS,CAAgB;IACxC,CAAC;CACL;AALD,4CAKC;AAKD,MAAa,gBAAgB;CAAG;AAAhC,4CAAgC;AAKhC,MAAa,iBAAiB;IAC5B,YAA4B,SAA4B;QAA5B,cAAS,GAAT,SAAS,CAAmB;IAAG,CAAC;CAC7D;AAFD,8CAEC;AAKD,MAAa,gBAAgB;IAC3B,YAA4B,OAAe;QAAf,YAAO,GAAP,OAAO,CAAQ;IAAG,CAAC;CAChD;AAFD,4CAEC;AAKD,MAAa,mBAAmB;CAAG;AAAnC,kDAAmC;AAKnC,MAAa,kBAAkB;CAAG;AAAlC,gDAAkC;AAKlC,MAAa,mBAAmB;IAC9B,YAA4B,OAAgC;QAAhC,YAAO,GAAP,OAAO,CAAyB;IAAG,CAAC;CACjE;AAFD,kDAEC"}
|