node-opcua-transport 2.67.1 → 2.69.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/dist/source/client_tcp_transport.d.ts +8 -4
- package/dist/source/client_tcp_transport.js +15 -6
- package/dist/source/client_tcp_transport.js.map +1 -1
- package/dist/source/index.d.ts +5 -3
- package/dist/source/index.js +10 -4
- package/dist/source/index.js.map +1 -1
- package/dist/source/message_builder_base.d.ts +27 -7
- package/dist/source/message_builder_base.js +36 -13
- package/dist/source/message_builder_base.js.map +1 -1
- package/dist/source/server_tcp_transport.d.ts +1 -5
- package/dist/source/server_tcp_transport.js +42 -40
- package/dist/source/server_tcp_transport.js.map +1 -1
- package/dist/source/status_codes.d.ts +100 -0
- package/dist/source/status_codes.js +111 -0
- package/dist/source/status_codes.js.map +1 -0
- package/dist/source/tcp_transport.d.ts +21 -28
- package/dist/source/tcp_transport.js +86 -57
- package/dist/source/tcp_transport.js.map +1 -1
- package/dist/source/tools.d.ts +1 -0
- package/dist/source/utils.d.ts +3 -2
- package/dist/source/utils.js +4 -3
- package/dist/source/utils.js.map +1 -1
- package/dist/test-fixtures/index.js +5 -1
- package/dist/test-fixtures/index.js.map +1 -1
- package/dist/test_helpers/direct_transport.d.ts +4 -0
- package/dist/test_helpers/direct_transport.js.map +1 -1
- package/dist/test_helpers/fake_server.d.ts +2 -0
- package/dist/test_helpers/half_com_channel.d.ts +7 -0
- package/dist/test_helpers/half_com_channel.js.map +1 -1
- package/dist/test_helpers/index.js +5 -1
- package/dist/test_helpers/index.js.map +1 -1
- package/package.json +16 -16
- package/source/client_tcp_transport.ts +21 -9
- package/source/index.ts +5 -3
- package/source/message_builder_base.ts +68 -16
- package/source/server_tcp_transport.ts +51 -48
- package/source/status_codes.ts +109 -0
- package/source/tcp_transport.ts +118 -73
- package/source/utils.ts +3 -2
- package/test_helpers/direct_transport.ts +4 -1
- package/test_helpers/half_com_channel.ts +7 -0
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
export declare const StatusCodes2: {
|
|
2
|
+
/**
|
|
3
|
+
* The Server cannot process the request because it is too busy.
|
|
4
|
+
*
|
|
5
|
+
* It is up to the Server to determine when it needs to return this Message.
|
|
6
|
+
*
|
|
7
|
+
* A Server can control the how frequently a Client reconnects by waiting to return this error.
|
|
8
|
+
*/
|
|
9
|
+
BadTcpServerTooBusy: import("node-opcua-status-code").ConstantStatusCode;
|
|
10
|
+
/**
|
|
11
|
+
* The type of the Message specified in the header invalid.
|
|
12
|
+
* Each Message starts with a 4-byte sequence of ASCII values that identifies the Message type.
|
|
13
|
+
* The Server returns this error if the Message type is not accepted.
|
|
14
|
+
* Some of the Message types are defined by the SecureChannel layer.
|
|
15
|
+
*/
|
|
16
|
+
BadTcpMessageTypeInvalid: import("node-opcua-status-code").ConstantStatusCode;
|
|
17
|
+
/**
|
|
18
|
+
* The SecureChannelId and/or TokenId are not currently in use.
|
|
19
|
+
* This error is reported by the SecureChannel layer.
|
|
20
|
+
*/
|
|
21
|
+
BadTcpSecureChannelUnknown: import("node-opcua-status-code").ConstantStatusCode;
|
|
22
|
+
/**
|
|
23
|
+
* The size of the Message specified in the header is too large.
|
|
24
|
+
* The Server returns this error if the Message size exceeds its maximum buffer size
|
|
25
|
+
* or the receive buffer size negotiated during the Hello/Acknowledge exchange.
|
|
26
|
+
*/
|
|
27
|
+
BadTcpMessageTooLarge: import("node-opcua-status-code").ConstantStatusCode;
|
|
28
|
+
/**
|
|
29
|
+
* A timeout occurred while accessing a resource.
|
|
30
|
+
* It is up to the Server to determine when a timeout occurs.
|
|
31
|
+
*/
|
|
32
|
+
BadTimeout: import("node-opcua-status-code").ConstantStatusCode;
|
|
33
|
+
/**
|
|
34
|
+
* There are not enough resources to process the request.
|
|
35
|
+
* The Server returns this error when it runs out of memory or encounters similar resource problems.
|
|
36
|
+
* A Server can control the how frequently a Client reconnects by waiting to return this error.
|
|
37
|
+
*/
|
|
38
|
+
BadTcpNotEnoughResources: import("node-opcua-status-code").ConstantStatusCode;
|
|
39
|
+
/**
|
|
40
|
+
* An internal error occurred.
|
|
41
|
+
* This should only be returned if an unexpected configuration or programming error occurs.
|
|
42
|
+
*/
|
|
43
|
+
BadTcpInternalError: import("node-opcua-status-code").ConstantStatusCode;
|
|
44
|
+
/**
|
|
45
|
+
* The Server does not recognize the EndpointUrl specified.
|
|
46
|
+
*/
|
|
47
|
+
BadTcpEndpointUrlInvalid: import("node-opcua-status-code").ConstantStatusCode;
|
|
48
|
+
/**
|
|
49
|
+
* The Message was rejected because it could not be verified.
|
|
50
|
+
*/
|
|
51
|
+
BadSecurityChecksFailed: import("node-opcua-status-code").ConstantStatusCode;
|
|
52
|
+
/**
|
|
53
|
+
* The request could not be sent because of a network interruption.
|
|
54
|
+
*/
|
|
55
|
+
BadRequestInterrupted: import("node-opcua-status-code").ConstantStatusCode;
|
|
56
|
+
/**
|
|
57
|
+
* Timeout occurred while processing the request.
|
|
58
|
+
*/
|
|
59
|
+
BadRequestTimeout: import("node-opcua-status-code").ConstantStatusCode;
|
|
60
|
+
/**
|
|
61
|
+
* The secure channel has been closed.
|
|
62
|
+
*/
|
|
63
|
+
BadSecureChannelClosed: import("node-opcua-status-code").ConstantStatusCode;
|
|
64
|
+
/**
|
|
65
|
+
* The SecurityToken has expired or is not recognized. BadSecureChannelTokenUnknown
|
|
66
|
+
*/
|
|
67
|
+
BadSecureChannelTokenUnknown: import("node-opcua-status-code").ConstantStatusCode;
|
|
68
|
+
/**
|
|
69
|
+
* The sender Certificate is not trusted by the receiver.
|
|
70
|
+
*/
|
|
71
|
+
BadCertificateUntrusted: import("node-opcua-status-code").ConstantStatusCode;
|
|
72
|
+
/**
|
|
73
|
+
* The sender Certificate has expired or is not yet valid.
|
|
74
|
+
*/
|
|
75
|
+
BadCertificateTimeInvalid: import("node-opcua-status-code").ConstantStatusCode;
|
|
76
|
+
/**
|
|
77
|
+
* The issuer for the sender Certificate has expired or is not yet valid.
|
|
78
|
+
*/
|
|
79
|
+
BadCertificateIssuerTimeInvalid: import("node-opcua-status-code").ConstantStatusCode;
|
|
80
|
+
/**
|
|
81
|
+
* The sender’s Certificate may not be used for establishing a secure channel.
|
|
82
|
+
*/
|
|
83
|
+
BadCertificateUseNotAllowed: import("node-opcua-status-code").ConstantStatusCode;
|
|
84
|
+
/**
|
|
85
|
+
* The issuer Certificate may not be used as a Certificate Authority.
|
|
86
|
+
*/
|
|
87
|
+
BadCertificateIssuerUseNotAllowed: import("node-opcua-status-code").ConstantStatusCode;
|
|
88
|
+
/**
|
|
89
|
+
* Could not verify the revocation status of the sender’s Certificate.
|
|
90
|
+
*/
|
|
91
|
+
BadCertificateRevocationUnknown: import("node-opcua-status-code").ConstantStatusCode;
|
|
92
|
+
/**
|
|
93
|
+
* Could not verify the revocation status of the issuer Certificate.
|
|
94
|
+
*/
|
|
95
|
+
BadCertificateIssuerRevocationUnknown: import("node-opcua-status-code").ConstantStatusCode;
|
|
96
|
+
/**
|
|
97
|
+
* The sender Certificate has been revoked by the issuer.
|
|
98
|
+
*/
|
|
99
|
+
BadCertificateRevoked: import("node-opcua-status-code").ConstantStatusCode;
|
|
100
|
+
};
|
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.StatusCodes2 = void 0;
|
|
4
|
+
const node_opcua_status_code_1 = require("node-opcua-status-code");
|
|
5
|
+
exports.StatusCodes2 = {
|
|
6
|
+
/**
|
|
7
|
+
* The Server cannot process the request because it is too busy.
|
|
8
|
+
*
|
|
9
|
+
* It is up to the Server to determine when it needs to return this Message.
|
|
10
|
+
*
|
|
11
|
+
* A Server can control the how frequently a Client reconnects by waiting to return this error.
|
|
12
|
+
*/
|
|
13
|
+
BadTcpServerTooBusy: node_opcua_status_code_1.StatusCodes.BadTcpServerTooBusy,
|
|
14
|
+
/**
|
|
15
|
+
* The type of the Message specified in the header invalid.
|
|
16
|
+
* Each Message starts with a 4-byte sequence of ASCII values that identifies the Message type.
|
|
17
|
+
* The Server returns this error if the Message type is not accepted.
|
|
18
|
+
* Some of the Message types are defined by the SecureChannel layer.
|
|
19
|
+
*/
|
|
20
|
+
BadTcpMessageTypeInvalid: node_opcua_status_code_1.StatusCodes.BadTcpMessageTypeInvalid,
|
|
21
|
+
/**
|
|
22
|
+
* The SecureChannelId and/or TokenId are not currently in use.
|
|
23
|
+
* This error is reported by the SecureChannel layer.
|
|
24
|
+
*/
|
|
25
|
+
BadTcpSecureChannelUnknown: node_opcua_status_code_1.StatusCodes.BadTcpSecureChannelUnknown,
|
|
26
|
+
/**
|
|
27
|
+
* The size of the Message specified in the header is too large.
|
|
28
|
+
* The Server returns this error if the Message size exceeds its maximum buffer size
|
|
29
|
+
* or the receive buffer size negotiated during the Hello/Acknowledge exchange.
|
|
30
|
+
*/
|
|
31
|
+
BadTcpMessageTooLarge: node_opcua_status_code_1.StatusCodes.BadTcpMessageTooLarge,
|
|
32
|
+
/**
|
|
33
|
+
* A timeout occurred while accessing a resource.
|
|
34
|
+
* It is up to the Server to determine when a timeout occurs.
|
|
35
|
+
*/
|
|
36
|
+
BadTimeout: node_opcua_status_code_1.StatusCodes.BadTimeout,
|
|
37
|
+
/**
|
|
38
|
+
* There are not enough resources to process the request.
|
|
39
|
+
* The Server returns this error when it runs out of memory or encounters similar resource problems.
|
|
40
|
+
* A Server can control the how frequently a Client reconnects by waiting to return this error.
|
|
41
|
+
*/
|
|
42
|
+
BadTcpNotEnoughResources: node_opcua_status_code_1.StatusCodes.BadTcpNotEnoughResources,
|
|
43
|
+
/**
|
|
44
|
+
* An internal error occurred.
|
|
45
|
+
* This should only be returned if an unexpected configuration or programming error occurs.
|
|
46
|
+
*/
|
|
47
|
+
BadTcpInternalError: node_opcua_status_code_1.StatusCodes.BadTcpInternalError,
|
|
48
|
+
/**
|
|
49
|
+
* The Server does not recognize the EndpointUrl specified.
|
|
50
|
+
*/
|
|
51
|
+
BadTcpEndpointUrlInvalid: node_opcua_status_code_1.StatusCodes.BadTcpEndpointUrlInvalid,
|
|
52
|
+
/**
|
|
53
|
+
* The Message was rejected because it could not be verified.
|
|
54
|
+
*/
|
|
55
|
+
BadSecurityChecksFailed: node_opcua_status_code_1.StatusCodes.BadSecurityChecksFailed,
|
|
56
|
+
/**
|
|
57
|
+
* The request could not be sent because of a network interruption.
|
|
58
|
+
*/
|
|
59
|
+
BadRequestInterrupted: node_opcua_status_code_1.StatusCodes.BadRequestInterrupted,
|
|
60
|
+
/**
|
|
61
|
+
* Timeout occurred while processing the request.
|
|
62
|
+
*/
|
|
63
|
+
BadRequestTimeout: node_opcua_status_code_1.StatusCodes.BadRequestTimeout,
|
|
64
|
+
/**
|
|
65
|
+
* The secure channel has been closed.
|
|
66
|
+
*/
|
|
67
|
+
BadSecureChannelClosed: node_opcua_status_code_1.StatusCodes.BadSecureChannelClosed,
|
|
68
|
+
/**
|
|
69
|
+
* The SecurityToken has expired or is not recognized. BadSecureChannelTokenUnknown
|
|
70
|
+
*/
|
|
71
|
+
BadSecureChannelTokenUnknown: node_opcua_status_code_1.StatusCodes.BadSecureChannelTokenUnknown,
|
|
72
|
+
/**
|
|
73
|
+
* The sender Certificate is not trusted by the receiver.
|
|
74
|
+
*/
|
|
75
|
+
BadCertificateUntrusted: node_opcua_status_code_1.StatusCodes.BadCertificateUntrusted,
|
|
76
|
+
/**
|
|
77
|
+
* The sender Certificate has expired or is not yet valid.
|
|
78
|
+
*/
|
|
79
|
+
BadCertificateTimeInvalid: node_opcua_status_code_1.StatusCodes.BadCertificateTimeInvalid,
|
|
80
|
+
/**
|
|
81
|
+
* The issuer for the sender Certificate has expired or is not yet valid.
|
|
82
|
+
*/
|
|
83
|
+
BadCertificateIssuerTimeInvalid: node_opcua_status_code_1.StatusCodes.BadCertificateIssuerTimeInvalid,
|
|
84
|
+
/**
|
|
85
|
+
* The sender’s Certificate may not be used for establishing a secure channel.
|
|
86
|
+
*/
|
|
87
|
+
BadCertificateUseNotAllowed: node_opcua_status_code_1.StatusCodes.BadCertificateUseNotAllowed,
|
|
88
|
+
/**
|
|
89
|
+
* The issuer Certificate may not be used as a Certificate Authority.
|
|
90
|
+
*/
|
|
91
|
+
BadCertificateIssuerUseNotAllowed: node_opcua_status_code_1.StatusCodes.BadCertificateIssuerUseNotAllowed,
|
|
92
|
+
/**
|
|
93
|
+
* Could not verify the revocation status of the sender’s Certificate.
|
|
94
|
+
*/
|
|
95
|
+
BadCertificateRevocationUnknown: node_opcua_status_code_1.StatusCodes.BadCertificateRevocationUnknown,
|
|
96
|
+
/**
|
|
97
|
+
* Could not verify the revocation status of the issuer Certificate.
|
|
98
|
+
*/
|
|
99
|
+
BadCertificateIssuerRevocationUnknown: node_opcua_status_code_1.StatusCodes.BadCertificateIssuerRevocationUnknown,
|
|
100
|
+
/**
|
|
101
|
+
* The sender Certificate has been revoked by the issuer.
|
|
102
|
+
*/
|
|
103
|
+
BadCertificateRevoked: node_opcua_status_code_1.StatusCodes.BadCertificateRevoked
|
|
104
|
+
/**The issuer Certificate has been revoked by its issuer.
|
|
105
|
+
*/
|
|
106
|
+
// todo BadIssuerCertificateRevoked: StatusCodes.BadIssuerCertificateRevoked,
|
|
107
|
+
/** The receiver Certificate thumbprint is not recognized by the receiver.
|
|
108
|
+
*/
|
|
109
|
+
// todo .. BadCertificateUnknown: StatusCodes.BadCertificateUnknown
|
|
110
|
+
};
|
|
111
|
+
//# sourceMappingURL=status_codes.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"status_codes.js","sourceRoot":"","sources":["../../source/status_codes.ts"],"names":[],"mappings":";;;AAAA,mEAAqD;AAExC,QAAA,YAAY,GAAG;IACxB;;;;;;OAMG;IACH,mBAAmB,EAAE,oCAAW,CAAC,mBAAmB;IACpD;;;;;OAKG;IACH,wBAAwB,EAAE,oCAAW,CAAC,wBAAwB;IAC9D;;;OAGG;IACH,0BAA0B,EAAE,oCAAW,CAAC,0BAA0B;IAClE;;;;OAIG;IACH,qBAAqB,EAAE,oCAAW,CAAC,qBAAqB;IAExD;;;OAGG;IACH,UAAU,EAAE,oCAAW,CAAC,UAAU;IAClC;;;;OAIG;IACH,wBAAwB,EAAE,oCAAW,CAAC,wBAAwB;IAC9D;;;OAGG;IACH,mBAAmB,EAAE,oCAAW,CAAC,mBAAmB;IACpD;;OAEG;IACH,wBAAwB,EAAE,oCAAW,CAAC,wBAAwB;IAC9D;;OAEG;IACH,uBAAuB,EAAE,oCAAW,CAAC,uBAAuB;IAC5D;;OAEG;IACH,qBAAqB,EAAE,oCAAW,CAAC,qBAAqB;IACxD;;OAEG;IACH,iBAAiB,EAAE,oCAAW,CAAC,iBAAiB;IAChD;;OAEG;IACH,sBAAsB,EAAE,oCAAW,CAAC,sBAAsB;IAC1D;;OAEG;IACH,4BAA4B,EAAE,oCAAW,CAAC,4BAA4B;IACtE;;OAEG;IACH,uBAAuB,EAAE,oCAAW,CAAC,uBAAuB;IAC5D;;OAEG;IACH,yBAAyB,EAAE,oCAAW,CAAC,yBAAyB;IAChE;;OAEG;IACH,+BAA+B,EAAE,oCAAW,CAAC,+BAA+B;IAC5E;;OAEG;IACH,2BAA2B,EAAE,oCAAW,CAAC,2BAA2B;IACpE;;OAEG;IACH,iCAAiC,EAAE,oCAAW,CAAC,iCAAiC;IAChF;;OAEG;IACH,+BAA+B,EAAE,oCAAW,CAAC,+BAA+B;IAC5E;;OAEG;IACH,qCAAqC,EAAE,oCAAW,CAAC,qCAAqC;IACxF;;OAEG;IACH,qBAAqB,EAAE,oCAAW,CAAC,qBAAqB;IACxD;OACG;IACH,8EAA8E;IAC9E;OACG;IACH,mEAAmE;CACtE,CAAC"}
|
|
@@ -1,10 +1,12 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
|
+
/// <reference types="node" />
|
|
3
|
+
/// <reference types="node" />
|
|
2
4
|
/**
|
|
3
5
|
* @module node-opcua-transport
|
|
4
6
|
*/
|
|
5
7
|
import { EventEmitter } from "events";
|
|
6
8
|
import { Socket } from "net";
|
|
7
|
-
import { ErrorCallback, CallbackWithData } from "node-opcua-status-code";
|
|
9
|
+
import { ErrorCallback, CallbackWithData, StatusCode } from "node-opcua-status-code";
|
|
8
10
|
export interface MockSocket {
|
|
9
11
|
invalid?: boolean;
|
|
10
12
|
[key: string]: any;
|
|
@@ -14,10 +16,10 @@ export interface MockSocket {
|
|
|
14
16
|
export declare function setFakeTransport(mockSocket: MockSocket): void;
|
|
15
17
|
export declare function getFakeTransport(): any;
|
|
16
18
|
export interface TCP_transport {
|
|
17
|
-
on(eventName: "
|
|
19
|
+
on(eventName: "chunk", eventHandler: (messageChunk: Buffer) => void): this;
|
|
18
20
|
on(eventName: "socket_closed", eventHandler: (err: Error | null) => void): this;
|
|
19
21
|
on(eventName: "close", eventHandler: (err: Error | null) => void): this;
|
|
20
|
-
once(eventName: "
|
|
22
|
+
once(eventName: "chunk", eventHandler: (messageChunk: Buffer) => void): this;
|
|
21
23
|
once(eventName: "socket_closed", eventHandler: (err: Error | null) => void): this;
|
|
22
24
|
once(eventName: "close", eventHandler: (err: Error | null) => void): this;
|
|
23
25
|
}
|
|
@@ -28,6 +30,10 @@ export declare class TCP_transport extends EventEmitter {
|
|
|
28
30
|
* @default 0
|
|
29
31
|
*/
|
|
30
32
|
protocolVersion: number;
|
|
33
|
+
maxMessageSize: number;
|
|
34
|
+
maxChunkCount: number;
|
|
35
|
+
sendBufferSize: number;
|
|
36
|
+
receiveBufferSize: number;
|
|
31
37
|
bytesWritten: number;
|
|
32
38
|
bytesRead: number;
|
|
33
39
|
chunkWrittenCount: number;
|
|
@@ -45,39 +51,24 @@ export declare class TCP_transport extends EventEmitter {
|
|
|
45
51
|
private _onSocketEndedHasBeenCalled;
|
|
46
52
|
private _theCallback?;
|
|
47
53
|
private _on_error_during_one_time_message_receiver;
|
|
48
|
-
private _pendingBuffer?;
|
|
49
54
|
private packetAssembler?;
|
|
50
55
|
private _timeout;
|
|
51
56
|
constructor();
|
|
57
|
+
setLimits({ receiveBufferSize, sendBufferSize, maxMessageSize, maxChunkCount }: {
|
|
58
|
+
receiveBufferSize: number;
|
|
59
|
+
sendBufferSize: number;
|
|
60
|
+
maxMessageSize: number;
|
|
61
|
+
maxChunkCount: number;
|
|
62
|
+
}): void;
|
|
52
63
|
get timeout(): number;
|
|
53
64
|
set timeout(value: number);
|
|
54
65
|
dispose(): void;
|
|
55
|
-
/**
|
|
56
|
-
* ```createChunk``` is used to construct a pre-allocated chunk to store up to ```length``` bytes of data.
|
|
57
|
-
* The created chunk includes a prepended header for ```chunk_type``` of size ```self.headerSize```.
|
|
58
|
-
*
|
|
59
|
-
* @method createChunk
|
|
60
|
-
* @param msgType
|
|
61
|
-
* @param chunkType {String} chunk type. should be 'F' 'C' or 'A'
|
|
62
|
-
* @param length
|
|
63
|
-
* @return a buffer object with the required length representing the chunk.
|
|
64
|
-
*
|
|
65
|
-
* Note:
|
|
66
|
-
* - only one chunk can be created at a time.
|
|
67
|
-
* - a created chunk should be committed using the ```write``` method before an other one is created.
|
|
68
|
-
*/
|
|
69
|
-
createChunk(msgType: string, chunkType: string, length: number): Buffer;
|
|
70
66
|
/**
|
|
71
67
|
* write the message_chunk on the socket.
|
|
72
68
|
* @method write
|
|
73
69
|
* @param messageChunk
|
|
74
|
-
*
|
|
75
|
-
* Notes:
|
|
76
|
-
* - the message chunk must have been created by ```createChunk```.
|
|
77
|
-
* - once a message chunk has been written, it is possible to call ```createChunk``` again.
|
|
78
|
-
*
|
|
79
70
|
*/
|
|
80
|
-
write(messageChunk: Buffer): void;
|
|
71
|
+
write(messageChunk: Buffer, callback?: (err?: Error) => void | undefined): void;
|
|
81
72
|
get isDisconnecting(): boolean;
|
|
82
73
|
/**
|
|
83
74
|
* disconnect the TCP layer and close the underlying socket.
|
|
@@ -89,15 +80,17 @@ export declare class TCP_transport extends EventEmitter {
|
|
|
89
80
|
*/
|
|
90
81
|
disconnect(callback: ErrorCallback): void;
|
|
91
82
|
isValid(): boolean;
|
|
92
|
-
protected _write_chunk(messageChunk: Buffer): void;
|
|
83
|
+
protected _write_chunk(messageChunk: Buffer, callback?: (err?: Error) => void | undefined): void;
|
|
93
84
|
protected on_socket_ended(err: Error | null): void;
|
|
85
|
+
protected _install_packetAssembler(): void;
|
|
94
86
|
/**
|
|
95
87
|
* @method _install_socket
|
|
96
88
|
* @param socket {Socket}
|
|
97
89
|
* @protected
|
|
98
90
|
*/
|
|
99
91
|
protected _install_socket(socket: Socket): void;
|
|
100
|
-
|
|
92
|
+
sendErrorMessage(statusCode: StatusCode, extraErrorDescription: string | null): void;
|
|
93
|
+
prematureTerminate(err: Error, statusCode: StatusCode): void;
|
|
101
94
|
/**
|
|
102
95
|
* @method _install_one_time_message_receiver
|
|
103
96
|
*
|
|
@@ -114,7 +107,7 @@ export declare class TCP_transport extends EventEmitter {
|
|
|
114
107
|
*/
|
|
115
108
|
protected _install_one_time_message_receiver(callback: CallbackWithData): void;
|
|
116
109
|
private _fulfill_pending_promises;
|
|
117
|
-
private
|
|
110
|
+
private _on_message_chunk_received;
|
|
118
111
|
private _cleanup_timers;
|
|
119
112
|
private _start_one_time_message_receiver;
|
|
120
113
|
private on_socket_closed;
|
|
@@ -7,15 +7,17 @@ exports.TCP_transport = exports.getFakeTransport = exports.setFakeTransport = vo
|
|
|
7
7
|
const events_1 = require("events");
|
|
8
8
|
const chalk = require("chalk");
|
|
9
9
|
const node_opcua_assert_1 = require("node-opcua-assert");
|
|
10
|
-
const
|
|
11
|
-
const debug = require("node-opcua-debug");
|
|
10
|
+
const node_opcua_debug_1 = require("node-opcua-debug");
|
|
12
11
|
const node_opcua_object_registry_1 = require("node-opcua-object-registry");
|
|
13
12
|
const node_opcua_packet_assembler_1 = require("node-opcua-packet-assembler");
|
|
13
|
+
const status_codes_1 = require("./status_codes");
|
|
14
14
|
const message_builder_base_1 = require("./message_builder_base");
|
|
15
|
+
const utils_1 = require("./utils");
|
|
16
|
+
const TCPErrorMessage_1 = require("./TCPErrorMessage");
|
|
15
17
|
const tools_1 = require("./tools");
|
|
16
|
-
const debugLog =
|
|
17
|
-
const doDebug =
|
|
18
|
-
const errorLog =
|
|
18
|
+
const debugLog = (0, node_opcua_debug_1.make_debugLog)(__filename);
|
|
19
|
+
const doDebug = (0, node_opcua_debug_1.checkDebugFlag)(__filename);
|
|
20
|
+
const errorLog = (0, node_opcua_debug_1.make_errorLog)(__filename);
|
|
19
21
|
let fakeSocket = {
|
|
20
22
|
invalid: true,
|
|
21
23
|
destroy() {
|
|
@@ -47,9 +49,12 @@ class TCP_transport extends events_1.EventEmitter {
|
|
|
47
49
|
this._timeout = 30000; // 30 seconds timeout
|
|
48
50
|
this._socket = null;
|
|
49
51
|
this.headerSize = 8;
|
|
52
|
+
this.maxMessageSize = 0;
|
|
53
|
+
this.maxChunkCount = 0;
|
|
54
|
+
this.receiveBufferSize = 0;
|
|
55
|
+
this.sendBufferSize = 0;
|
|
50
56
|
this.protocolVersion = 0;
|
|
51
57
|
this._disconnecting = false;
|
|
52
|
-
this._pendingBuffer = undefined;
|
|
53
58
|
this.bytesWritten = 0;
|
|
54
59
|
this.bytesRead = 0;
|
|
55
60
|
this._theCallback = undefined;
|
|
@@ -59,6 +64,14 @@ class TCP_transport extends events_1.EventEmitter {
|
|
|
59
64
|
this._onSocketEndedHasBeenCalled = false;
|
|
60
65
|
TCP_transport.registry.register(this);
|
|
61
66
|
}
|
|
67
|
+
setLimits({ receiveBufferSize, sendBufferSize, maxMessageSize, maxChunkCount }) {
|
|
68
|
+
this.receiveBufferSize = receiveBufferSize;
|
|
69
|
+
this.sendBufferSize = sendBufferSize;
|
|
70
|
+
this.maxMessageSize = maxMessageSize;
|
|
71
|
+
this.maxChunkCount = maxChunkCount;
|
|
72
|
+
// reinstall packetAssembler with correct limits
|
|
73
|
+
this._install_packetAssembler();
|
|
74
|
+
}
|
|
62
75
|
get timeout() {
|
|
63
76
|
return this._timeout;
|
|
64
77
|
}
|
|
@@ -76,46 +89,19 @@ class TCP_transport extends events_1.EventEmitter {
|
|
|
76
89
|
}
|
|
77
90
|
TCP_transport.registry.unregister(this);
|
|
78
91
|
}
|
|
79
|
-
/**
|
|
80
|
-
* ```createChunk``` is used to construct a pre-allocated chunk to store up to ```length``` bytes of data.
|
|
81
|
-
* The created chunk includes a prepended header for ```chunk_type``` of size ```self.headerSize```.
|
|
82
|
-
*
|
|
83
|
-
* @method createChunk
|
|
84
|
-
* @param msgType
|
|
85
|
-
* @param chunkType {String} chunk type. should be 'F' 'C' or 'A'
|
|
86
|
-
* @param length
|
|
87
|
-
* @return a buffer object with the required length representing the chunk.
|
|
88
|
-
*
|
|
89
|
-
* Note:
|
|
90
|
-
* - only one chunk can be created at a time.
|
|
91
|
-
* - a created chunk should be committed using the ```write``` method before an other one is created.
|
|
92
|
-
*/
|
|
93
|
-
createChunk(msgType, chunkType, length) {
|
|
94
|
-
(0, node_opcua_assert_1.assert)(msgType === "MSG");
|
|
95
|
-
(0, node_opcua_assert_1.assert)(this._pendingBuffer === undefined, "createChunk has already been called ( use write first)");
|
|
96
|
-
const totalLength = length + this.headerSize;
|
|
97
|
-
const buffer = (0, node_opcua_buffer_utils_1.createFastUninitializedBuffer)(totalLength);
|
|
98
|
-
(0, tools_1.writeTCPMessageHeader)("MSG", chunkType, totalLength, buffer);
|
|
99
|
-
this._pendingBuffer = buffer;
|
|
100
|
-
return buffer;
|
|
101
|
-
}
|
|
102
92
|
/**
|
|
103
93
|
* write the message_chunk on the socket.
|
|
104
94
|
* @method write
|
|
105
95
|
* @param messageChunk
|
|
106
|
-
*
|
|
107
|
-
* Notes:
|
|
108
|
-
* - the message chunk must have been created by ```createChunk```.
|
|
109
|
-
* - once a message chunk has been written, it is possible to call ```createChunk``` again.
|
|
110
|
-
*
|
|
111
96
|
*/
|
|
112
|
-
write(messageChunk) {
|
|
113
|
-
(0, node_opcua_assert_1.assert)(this._pendingBuffer === undefined || this._pendingBuffer === messageChunk, " write should be used with buffer created by createChunk");
|
|
97
|
+
write(messageChunk, callback) {
|
|
114
98
|
const header = (0, message_builder_base_1.readRawMessageHeader)(messageChunk);
|
|
115
99
|
(0, node_opcua_assert_1.assert)(header.length === messageChunk.length);
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
this.
|
|
100
|
+
const c = header.messageHeader.isFinal;
|
|
101
|
+
(0, node_opcua_assert_1.assert)(c === "F" || c === "C" || c === "A");
|
|
102
|
+
this._write_chunk(messageChunk, (err) => {
|
|
103
|
+
callback && callback(err);
|
|
104
|
+
});
|
|
119
105
|
}
|
|
120
106
|
get isDisconnecting() {
|
|
121
107
|
return this._disconnecting;
|
|
@@ -153,11 +139,16 @@ class TCP_transport extends events_1.EventEmitter {
|
|
|
153
139
|
isValid() {
|
|
154
140
|
return this._socket !== null && !this._socket.destroyed && !this._disconnecting;
|
|
155
141
|
}
|
|
156
|
-
_write_chunk(messageChunk) {
|
|
142
|
+
_write_chunk(messageChunk, callback) {
|
|
157
143
|
if (this._socket !== null) {
|
|
158
144
|
this.bytesWritten += messageChunk.length;
|
|
159
145
|
this.chunkWrittenCount++;
|
|
160
|
-
this._socket.write(messageChunk);
|
|
146
|
+
this._socket.write(messageChunk, callback);
|
|
147
|
+
}
|
|
148
|
+
else {
|
|
149
|
+
if (callback) {
|
|
150
|
+
callback();
|
|
151
|
+
}
|
|
161
152
|
}
|
|
162
153
|
}
|
|
163
154
|
on_socket_ended(err) {
|
|
@@ -170,6 +161,31 @@ class TCP_transport extends events_1.EventEmitter {
|
|
|
170
161
|
*/
|
|
171
162
|
this.emit("close", err || null);
|
|
172
163
|
}
|
|
164
|
+
_install_packetAssembler() {
|
|
165
|
+
if (this.packetAssembler) {
|
|
166
|
+
this.packetAssembler.removeAllListeners();
|
|
167
|
+
this.packetAssembler = undefined;
|
|
168
|
+
}
|
|
169
|
+
// install packet assembler ...
|
|
170
|
+
this.packetAssembler = new node_opcua_packet_assembler_1.PacketAssembler({
|
|
171
|
+
readChunkFunc: message_builder_base_1.readRawMessageHeader,
|
|
172
|
+
minimumSizeInBytes: this.headerSize,
|
|
173
|
+
maxChunkSize: this.receiveBufferSize //Math.max(this.receiveBufferSize, this.sendBufferSize)
|
|
174
|
+
});
|
|
175
|
+
this.packetAssembler.on("chunk", (chunk) => this._on_message_chunk_received(chunk));
|
|
176
|
+
this.packetAssembler.on("error", (err, code) => {
|
|
177
|
+
let statusCode = status_codes_1.StatusCodes2.BadTcpMessageTooLarge;
|
|
178
|
+
switch (code) {
|
|
179
|
+
case node_opcua_packet_assembler_1.PacketAssemblerErrorCode.ChunkSizeExceeded:
|
|
180
|
+
statusCode = status_codes_1.StatusCodes2.BadTcpMessageTooLarge;
|
|
181
|
+
break;
|
|
182
|
+
default:
|
|
183
|
+
statusCode = status_codes_1.StatusCodes2.BadTcpInternalError;
|
|
184
|
+
}
|
|
185
|
+
this.sendErrorMessage(statusCode, err.message);
|
|
186
|
+
this.prematureTerminate(new Error("Packet Assembler : " + err.message), statusCode);
|
|
187
|
+
});
|
|
188
|
+
}
|
|
173
189
|
/**
|
|
174
190
|
* @method _install_socket
|
|
175
191
|
* @param socket {Socket}
|
|
@@ -181,16 +197,7 @@ class TCP_transport extends events_1.EventEmitter {
|
|
|
181
197
|
if (doDebug) {
|
|
182
198
|
debugLog(" TCP_transport#_install_socket ", this.name);
|
|
183
199
|
}
|
|
184
|
-
|
|
185
|
-
this.packetAssembler = new node_opcua_packet_assembler_1.PacketAssembler({
|
|
186
|
-
readMessageFunc: message_builder_base_1.readRawMessageHeader,
|
|
187
|
-
minimumSizeInBytes: this.headerSize
|
|
188
|
-
});
|
|
189
|
-
/* istanbul ignore next */
|
|
190
|
-
if (!this.packetAssembler) {
|
|
191
|
-
throw new Error("Internal Error");
|
|
192
|
-
}
|
|
193
|
-
this.packetAssembler.on("message", (messageChunk) => this._on_message_received(messageChunk));
|
|
200
|
+
this._install_packetAssembler();
|
|
194
201
|
this._socket
|
|
195
202
|
.on("data", (data) => this._on_socket_data(data))
|
|
196
203
|
.on("close", (hadError) => this._on_socket_close(hadError))
|
|
@@ -201,13 +208,30 @@ class TCP_transport extends events_1.EventEmitter {
|
|
|
201
208
|
// let use a large timeout here to make sure that we not conflict with our internal timeout
|
|
202
209
|
this._socket.setTimeout(this.timeout + 2000, () => {
|
|
203
210
|
debugLog(` _socket ${this.name} has timed out (timeout = ${this.timeout})`);
|
|
204
|
-
this.prematureTerminate(new Error("socket timeout : timeout=" + this.timeout));
|
|
211
|
+
this.prematureTerminate(new Error("socket timeout : timeout=" + this.timeout), status_codes_1.StatusCodes2.BadTimeout);
|
|
205
212
|
});
|
|
206
213
|
}
|
|
207
|
-
|
|
208
|
-
|
|
214
|
+
sendErrorMessage(statusCode, extraErrorDescription) {
|
|
215
|
+
// When the Client receives an Error Message it reports the error to the application and closes the TransportConnection gracefully.
|
|
216
|
+
// If a Client encounters a fatal error, it shall report the error to the application and send a CloseSecureChannel Message.
|
|
217
|
+
/* istanbul ignore next*/
|
|
218
|
+
if (doDebug) {
|
|
219
|
+
debugLog(chalk.red(" sendErrorMessage ") + chalk.cyan(statusCode.toString()));
|
|
220
|
+
debugLog(chalk.red(" extraErrorDescription ") + chalk.cyan(extraErrorDescription));
|
|
221
|
+
}
|
|
222
|
+
const reason = `${statusCode.toString()}:${extraErrorDescription || ""}`;
|
|
223
|
+
const errorResponse = new TCPErrorMessage_1.TCPErrorMessage({
|
|
224
|
+
statusCode,
|
|
225
|
+
reason
|
|
226
|
+
});
|
|
227
|
+
const messageChunk = (0, tools_1.packTcpMessage)("ERR", errorResponse);
|
|
228
|
+
this.write(messageChunk);
|
|
229
|
+
}
|
|
230
|
+
prematureTerminate(err, statusCode) {
|
|
231
|
+
// https://reference.opcfoundation.org/v104/Core/docs/Part6/6.7.3/
|
|
232
|
+
debugLog("prematureTerminate", err ? err.message : "", statusCode.toString());
|
|
209
233
|
if (this._socket) {
|
|
210
|
-
err.message = "socket
|
|
234
|
+
err.message = "premature socket termination " + err.message;
|
|
211
235
|
// we consider this as an error
|
|
212
236
|
const _s = this._socket;
|
|
213
237
|
_s.end();
|
|
@@ -217,6 +241,7 @@ class TCP_transport extends events_1.EventEmitter {
|
|
|
217
241
|
this.dispose();
|
|
218
242
|
_s.removeAllListeners();
|
|
219
243
|
}
|
|
244
|
+
// this.gracefullShutdown(err);
|
|
220
245
|
}
|
|
221
246
|
/**
|
|
222
247
|
* @method _install_one_time_message_receiver
|
|
@@ -252,7 +277,10 @@ class TCP_transport extends events_1.EventEmitter {
|
|
|
252
277
|
}
|
|
253
278
|
return false;
|
|
254
279
|
}
|
|
255
|
-
|
|
280
|
+
_on_message_chunk_received(messageChunk) {
|
|
281
|
+
if (utils_1.doTraceIncomingChunk) {
|
|
282
|
+
console.log((0, node_opcua_debug_1.hexDump)(messageChunk));
|
|
283
|
+
}
|
|
256
284
|
const hadCallback = this._fulfill_pending_promises(null, messageChunk);
|
|
257
285
|
this.chunkReadCount++;
|
|
258
286
|
if (!hadCallback) {
|
|
@@ -261,7 +289,7 @@ class TCP_transport extends events_1.EventEmitter {
|
|
|
261
289
|
* @event message
|
|
262
290
|
* @param message_chunk the message chunk
|
|
263
291
|
*/
|
|
264
|
-
this.emit("
|
|
292
|
+
this.emit("chunk", messageChunk);
|
|
265
293
|
}
|
|
266
294
|
}
|
|
267
295
|
_cleanup_timers() {
|
|
@@ -300,6 +328,7 @@ class TCP_transport extends events_1.EventEmitter {
|
|
|
300
328
|
this.emit("socket_closed", err || null);
|
|
301
329
|
}
|
|
302
330
|
_on_socket_data(data) {
|
|
331
|
+
// istanbul ignore next
|
|
303
332
|
if (!this.packetAssembler) {
|
|
304
333
|
throw new Error("internal Error");
|
|
305
334
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tcp_transport.js","sourceRoot":"","sources":["../../source/tcp_transport.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"tcp_transport.js","sourceRoot":"","sources":["../../source/tcp_transport.ts"],"names":[],"mappings":"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"}
|
package/dist/source/tools.d.ts
CHANGED
package/dist/source/utils.d.ts
CHANGED
|
@@ -1,2 +1,3 @@
|
|
|
1
|
-
export declare const doTraceHelloAck:
|
|
2
|
-
export declare const doTraceChunk:
|
|
1
|
+
export declare const doTraceHelloAck: boolean;
|
|
2
|
+
export declare const doTraceChunk: boolean;
|
|
3
|
+
export declare const doTraceIncomingChunk: boolean;
|
package/dist/source/utils.js
CHANGED
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
var _a, _b;
|
|
3
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
-
exports.doTraceChunk = exports.doTraceHelloAck = void 0;
|
|
4
|
+
exports.doTraceIncomingChunk = exports.doTraceChunk = exports.doTraceHelloAck = void 0;
|
|
5
5
|
//
|
|
6
6
|
const transportFlag = (((_b = (_a = process.env) === null || _a === void 0 ? void 0 : _a.NODEOPCUADEBUG) === null || _b === void 0 ? void 0 : _b.match(/TRANSPORT{([^}]*)}/)) || [])[1] || "";
|
|
7
|
-
exports.doTraceHelloAck = transportFlag.match(/HELACK/);
|
|
8
|
-
exports.doTraceChunk = transportFlag.match(/CHUNK/);
|
|
7
|
+
exports.doTraceHelloAck = !!transportFlag.match(/HELACK/);
|
|
8
|
+
exports.doTraceChunk = !!transportFlag.match(/CHUNK/);
|
|
9
|
+
exports.doTraceIncomingChunk = !!transportFlag.match(/FLOW/);
|
|
9
10
|
//# sourceMappingURL=utils.js.map
|
package/dist/source/utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../source/utils.ts"],"names":[],"mappings":";;;;AAAA,EAAE;AACF,MAAM,aAAa,GAAG,CAAC,CAAA,MAAA,MAAA,OAAO,CAAC,GAAG,0CAAE,cAAc,0CAAE,KAAK,CAAC,oBAAoB,CAAC,KAAI,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;AACnF,QAAA,eAAe,GAAG,aAAa,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../source/utils.ts"],"names":[],"mappings":";;;;AAAA,EAAE;AACF,MAAM,aAAa,GAAG,CAAC,CAAA,MAAA,MAAA,OAAO,CAAC,GAAG,0CAAE,cAAc,0CAAE,KAAK,CAAC,oBAAoB,CAAC,KAAI,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;AACnF,QAAA,eAAe,GAAG,CAAC,CAAC,aAAa,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;AAClD,QAAA,YAAY,GAAG,CAAC,CAAC,aAAa,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;AAC9C,QAAA,oBAAoB,GAAG,CAAC,CAAC,aAAa,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC"}
|