@scrypted/server 0.68.0 → 0.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/cert.d.ts +1 -1
- package/dist/cert.js +14 -6
- package/dist/cert.js.map +1 -1
- package/dist/media-helpers.d.ts +1 -1
- package/dist/media-helpers.js +17 -14
- package/dist/media-helpers.js.map +1 -1
- package/dist/scrypted-server-main.js +8 -5
- package/dist/scrypted-server-main.js.map +1 -1
- package/dist/services/plugin.d.ts +3 -0
- package/dist/services/plugin.js +5 -0
- package/dist/services/plugin.js.map +1 -1
- package/package.json +1 -1
- package/src/cert.ts +15 -7
- package/src/media-helpers.ts +18 -14
- package/src/scrypted-server-main.ts +8 -6
- package/src/services/plugin.ts +7 -0
package/dist/cert.d.ts
CHANGED
package/dist/cert.js
CHANGED
@@ -9,11 +9,19 @@ const node_forge_1 = __importDefault(require("node-forge"));
|
|
9
9
|
const crypto_1 = __importDefault(require("crypto"));
|
10
10
|
const { pki } = node_forge_1.default;
|
11
11
|
exports.CURRENT_SELF_SIGNED_CERTIFICATE_VERSION = 'v2';
|
12
|
-
function createSelfSignedCertificate() {
|
13
|
-
|
14
|
-
const keys = pki.rsa.generateKeyPair(2048);
|
12
|
+
function createSelfSignedCertificate(serviceKey) {
|
13
|
+
let privateKey;
|
15
14
|
const cert = pki.createCertificate();
|
16
|
-
|
15
|
+
if (serviceKey) {
|
16
|
+
privateKey = pki.privateKeyFromPem(serviceKey);
|
17
|
+
cert.publicKey = pki.rsa.setPublicKey(privateKey.n, privateKey.e);
|
18
|
+
}
|
19
|
+
else {
|
20
|
+
// generate a keypair and create an X.509v3 certificate
|
21
|
+
const keys = pki.rsa.generateKeyPair(2048);
|
22
|
+
privateKey = keys.privateKey;
|
23
|
+
cert.publicKey = keys.publicKey;
|
24
|
+
}
|
17
25
|
// NOTE: serialNumber is the hex encoded value of an ASN.1 INTEGER.
|
18
26
|
// Conforming CAs should ensure serialNumber is:
|
19
27
|
// - no more than 20 octets
|
@@ -64,9 +72,9 @@ function createSelfSignedCertificate() {
|
|
64
72
|
name: 'subjectKeyIdentifier'
|
65
73
|
}]);
|
66
74
|
// self-sign certificate
|
67
|
-
cert.sign(
|
75
|
+
cert.sign(privateKey);
|
68
76
|
return {
|
69
|
-
serviceKey: pki.privateKeyToPem(
|
77
|
+
serviceKey: pki.privateKeyToPem(privateKey),
|
70
78
|
certificate: pki.certificateToPem(cert),
|
71
79
|
version: exports.CURRENT_SELF_SIGNED_CERTIFICATE_VERSION,
|
72
80
|
};
|
package/dist/cert.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"cert.js","sourceRoot":"","sources":["../src/cert.ts"],"names":[],"mappings":";;;;;;AAAA,mBAAmB;AACnB,4DAA+B;AAC/B,oDAA4B;AAE5B,MAAM,EAAE,GAAG,EAAE,GAAG,oBAAK,CAAC;AAGT,QAAA,uCAAuC,GAAG,IAAI,CAAC;AAE5D,SAAgB,2BAA2B;
|
1
|
+
{"version":3,"file":"cert.js","sourceRoot":"","sources":["../src/cert.ts"],"names":[],"mappings":"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"}
|
package/dist/media-helpers.d.ts
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
/// <reference types="node" />
|
2
2
|
import { ChildProcess } from "child_process";
|
3
|
-
export declare function safeKillFFmpeg(cp: ChildProcess): void
|
3
|
+
export declare function safeKillFFmpeg(cp: ChildProcess): Promise<void>;
|
4
4
|
export declare function ffmpegLogInitialOutput(console: Console, cp: ChildProcess, forever?: boolean, storage?: Storage): void;
|
5
5
|
export declare function safePrintFFmpegArguments(console: Console, args: string[]): void;
|
package/dist/media-helpers.js
CHANGED
@@ -5,22 +5,27 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
6
6
|
exports.safePrintFFmpegArguments = exports.ffmpegLogInitialOutput = exports.safeKillFFmpeg = void 0;
|
7
7
|
const process_1 = __importDefault(require("process"));
|
8
|
+
const sleep_1 = require("./sleep");
|
8
9
|
const filtered = [
|
9
10
|
'decode_slice_header error',
|
10
11
|
'no frame!',
|
11
12
|
'non-existing PPS',
|
12
13
|
];
|
13
|
-
function safeKillFFmpeg(cp) {
|
14
|
+
async function safeKillFFmpeg(cp) {
|
14
15
|
if (!cp)
|
15
16
|
return;
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
cp.
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
17
|
+
if (cp.exitCode != null)
|
18
|
+
return;
|
19
|
+
await new Promise(async (resolve) => {
|
20
|
+
cp.on('exit', resolve);
|
21
|
+
// this will allow ffmpeg to send rtsp TEARDOWN etc
|
22
|
+
try {
|
23
|
+
cp.stdin.on('error', () => { });
|
24
|
+
cp.stdin.write('q\n');
|
25
|
+
}
|
26
|
+
catch (e) {
|
27
|
+
}
|
28
|
+
await (0, sleep_1.sleep)(2000);
|
24
29
|
for (const f of cp.stdio) {
|
25
30
|
try {
|
26
31
|
f?.destroy();
|
@@ -28,11 +33,9 @@ function safeKillFFmpeg(cp) {
|
|
28
33
|
catch (e) {
|
29
34
|
}
|
30
35
|
}
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
}, 2000);
|
35
|
-
}, 2000);
|
36
|
+
await (0, sleep_1.sleep)(2000);
|
37
|
+
cp.kill('SIGKILL');
|
38
|
+
});
|
36
39
|
}
|
37
40
|
exports.safeKillFFmpeg = safeKillFFmpeg;
|
38
41
|
function ffmpegLogInitialOutput(console, cp, forever, storage) {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"media-helpers.js","sourceRoot":"","sources":["../src/media-helpers.ts"],"names":[],"mappings":";;;;;;AACA,sDAA8B;
|
1
|
+
{"version":3,"file":"media-helpers.js","sourceRoot":"","sources":["../src/media-helpers.ts"],"names":[],"mappings":"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"}
|
@@ -131,13 +131,17 @@ async function start(mainFilename, options) {
|
|
131
131
|
const db = new level_1.default(dbPath);
|
132
132
|
await db.open();
|
133
133
|
let certSetting = await db.tryGet(db_types_1.Settings, 'certificate');
|
134
|
+
let keyPair = certSetting?.value;
|
134
135
|
if (certSetting?.value?.version !== cert_1.CURRENT_SELF_SIGNED_CERTIFICATE_VERSION) {
|
135
|
-
|
136
|
+
keyPair = (0, cert_1.createSelfSignedCertificate)();
|
136
137
|
certSetting = new db_types_1.Settings();
|
137
138
|
certSetting._id = 'certificate';
|
138
|
-
certSetting.value =
|
139
|
+
certSetting.value = keyPair;
|
139
140
|
certSetting = await db.upsert(certSetting);
|
140
141
|
}
|
142
|
+
else {
|
143
|
+
keyPair = (0, cert_1.createSelfSignedCertificate)(keyPair.serviceKey);
|
144
|
+
}
|
141
145
|
const basicAuth = http_auth_1.default.basic({
|
142
146
|
realm: 'Scrypted',
|
143
147
|
}, async (username, password, callback) => {
|
@@ -148,13 +152,12 @@ async function start(mainFilename, options) {
|
|
148
152
|
const sha = hash.digest().toString('hex');
|
149
153
|
callback(sha === user.passwordHash || password === user.token);
|
150
154
|
});
|
151
|
-
const keys = certSetting.value;
|
152
155
|
const httpsServerOptions = process_1.default.env.SCRYPTED_HTTPS_OPTIONS_FILE
|
153
156
|
? JSON.parse(fs_1.default.readFileSync(process_1.default.env.SCRYPTED_HTTPS_OPTIONS_FILE).toString())
|
154
157
|
: {};
|
155
158
|
const mergedHttpsServerOptions = Object.assign({
|
156
|
-
key:
|
157
|
-
cert:
|
159
|
+
key: keyPair.serviceKey,
|
160
|
+
cert: keyPair.certificate
|
158
161
|
}, httpsServerOptions);
|
159
162
|
const secure = https_1.default.createServer(mergedHttpsServerOptions, app);
|
160
163
|
const insecure = http_1.default.createServer(app);
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"scrypted-server-main.js","sourceRoot":"","sources":["../src/scrypted-server-main.ts"],"names":[],"mappings":"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"}
|
1
|
+
{"version":3,"file":"scrypted-server-main.js","sourceRoot":"","sources":["../src/scrypted-server-main.ts"],"names":[],"mappings":"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"}
|
package/dist/services/plugin.js
CHANGED
@@ -92,9 +92,13 @@ class PluginComponent {
|
|
92
92
|
const host = this.scrypted.plugins[pluginId];
|
93
93
|
let rpcObjects = 0;
|
94
94
|
let pendingResults = 0;
|
95
|
+
const pendingResultMethods = {};
|
95
96
|
if (host.peer) {
|
96
97
|
rpcObjects = host.peer.localProxied.size + Object.keys(host.peer.remoteWeakProxies).length;
|
97
98
|
pendingResults = Object.keys(host.peer.pendingResults).length;
|
99
|
+
for (const deferred of Object.values(host.peer.pendingResults)) {
|
100
|
+
pendingResultMethods[deferred.method] = (pendingResultMethods[deferred.method] || 0) + 1;
|
101
|
+
}
|
98
102
|
}
|
99
103
|
return {
|
100
104
|
pid: host?.worker?.pid,
|
@@ -102,6 +106,7 @@ class PluginComponent {
|
|
102
106
|
rpcObjects,
|
103
107
|
packageJson,
|
104
108
|
pendingResults,
|
109
|
+
pendingResultCounts: pendingResultMethods,
|
105
110
|
id: this.scrypted.findPluginDevice(pluginId)._id,
|
106
111
|
};
|
107
112
|
}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"plugin.js","sourceRoot":"","sources":["../../src/services/plugin.ts"],"names":[],"mappings":"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
|
1
|
+
{"version":3,"file":"plugin.js","sourceRoot":"","sources":["../../src/services/plugin.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
package/src/cert.ts
CHANGED
@@ -7,12 +7,20 @@ const { pki } = forge;
|
|
7
7
|
|
8
8
|
export const CURRENT_SELF_SIGNED_CERTIFICATE_VERSION = 'v2';
|
9
9
|
|
10
|
-
export function createSelfSignedCertificate() {
|
11
|
-
|
12
|
-
// generate a keypair and create an X.509v3 certificate
|
13
|
-
const keys = pki.rsa.generateKeyPair(2048);
|
10
|
+
export function createSelfSignedCertificate(serviceKey?: string) {
|
11
|
+
let privateKey: ReturnType<typeof pki.privateKeyFromPem>;
|
14
12
|
const cert = pki.createCertificate();
|
15
|
-
|
13
|
+
|
14
|
+
if (serviceKey) {
|
15
|
+
privateKey = pki.privateKeyFromPem(serviceKey);
|
16
|
+
cert.publicKey = pki.rsa.setPublicKey(privateKey.n, privateKey.e);
|
17
|
+
}
|
18
|
+
else {
|
19
|
+
// generate a keypair and create an X.509v3 certificate
|
20
|
+
const keys = pki.rsa.generateKeyPair(2048);
|
21
|
+
privateKey = keys.privateKey;
|
22
|
+
cert.publicKey = keys.publicKey;
|
23
|
+
}
|
16
24
|
|
17
25
|
// NOTE: serialNumber is the hex encoded value of an ASN.1 INTEGER.
|
18
26
|
// Conforming CAs should ensure serialNumber is:
|
@@ -65,9 +73,9 @@ export function createSelfSignedCertificate() {
|
|
65
73
|
}]);
|
66
74
|
|
67
75
|
// self-sign certificate
|
68
|
-
cert.sign(
|
76
|
+
cert.sign(privateKey);
|
69
77
|
return {
|
70
|
-
serviceKey: pki.privateKeyToPem(
|
78
|
+
serviceKey: pki.privateKeyToPem(privateKey),
|
71
79
|
certificate: pki.certificateToPem(cert),
|
72
80
|
version: CURRENT_SELF_SIGNED_CERTIFICATE_VERSION,
|
73
81
|
};
|
package/src/media-helpers.ts
CHANGED
@@ -1,5 +1,6 @@
|
|
1
1
|
import { ChildProcess } from "child_process";
|
2
2
|
import process from 'process';
|
3
|
+
import { sleep } from "./sleep";
|
3
4
|
|
4
5
|
const filtered = [
|
5
6
|
'decode_slice_header error',
|
@@ -7,17 +8,22 @@ const filtered = [
|
|
7
8
|
'non-existing PPS',
|
8
9
|
];
|
9
10
|
|
10
|
-
export function safeKillFFmpeg(cp: ChildProcess) {
|
11
|
+
export async function safeKillFFmpeg(cp: ChildProcess) {
|
11
12
|
if (!cp)
|
12
13
|
return;
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
cp.
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
14
|
+
if (cp.exitCode != null)
|
15
|
+
return;
|
16
|
+
await new Promise(async resolve => {
|
17
|
+
cp.on('exit', resolve);
|
18
|
+
// this will allow ffmpeg to send rtsp TEARDOWN etc
|
19
|
+
try {
|
20
|
+
cp.stdin.on('error', () => { });
|
21
|
+
cp.stdin.write('q\n');
|
22
|
+
}
|
23
|
+
catch (e) {
|
24
|
+
}
|
25
|
+
|
26
|
+
await sleep(2000);
|
21
27
|
for (const f of cp.stdio) {
|
22
28
|
try {
|
23
29
|
f?.destroy();
|
@@ -25,11 +31,9 @@ export function safeKillFFmpeg(cp: ChildProcess) {
|
|
25
31
|
catch (e) {
|
26
32
|
}
|
27
33
|
}
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
}, 2000);
|
32
|
-
}, 2000);
|
34
|
+
await sleep(2000);
|
35
|
+
cp.kill('SIGKILL');
|
36
|
+
});
|
33
37
|
}
|
34
38
|
|
35
39
|
export function ffmpegLogInitialOutput(console: Console, cp: ChildProcess, forever?: boolean, storage?: Storage) {
|
@@ -124,15 +124,19 @@ async function start(mainFilename: string, options?: {
|
|
124
124
|
await db.open();
|
125
125
|
|
126
126
|
let certSetting = await db.tryGet(Settings, 'certificate') as Settings;
|
127
|
+
let keyPair: ReturnType<typeof createSelfSignedCertificate> = certSetting?.value;
|
127
128
|
|
128
129
|
if (certSetting?.value?.version !== CURRENT_SELF_SIGNED_CERTIFICATE_VERSION) {
|
129
|
-
|
130
|
+
keyPair = createSelfSignedCertificate();
|
130
131
|
|
131
132
|
certSetting = new Settings();
|
132
133
|
certSetting._id = 'certificate';
|
133
|
-
certSetting.value =
|
134
|
+
certSetting.value = keyPair;
|
134
135
|
certSetting = await db.upsert(certSetting);
|
135
136
|
}
|
137
|
+
else {
|
138
|
+
keyPair = createSelfSignedCertificate(keyPair.serviceKey);
|
139
|
+
}
|
136
140
|
|
137
141
|
const basicAuth = httpAuth.basic({
|
138
142
|
realm: 'Scrypted',
|
@@ -147,15 +151,13 @@ async function start(mainFilename: string, options?: {
|
|
147
151
|
callback(sha === user.passwordHash || password === user.token);
|
148
152
|
});
|
149
153
|
|
150
|
-
const keys = certSetting.value;
|
151
|
-
|
152
154
|
const httpsServerOptions = process.env.SCRYPTED_HTTPS_OPTIONS_FILE
|
153
155
|
? JSON.parse(fs.readFileSync(process.env.SCRYPTED_HTTPS_OPTIONS_FILE).toString())
|
154
156
|
: {};
|
155
157
|
|
156
158
|
const mergedHttpsServerOptions = Object.assign({
|
157
|
-
key:
|
158
|
-
cert:
|
159
|
+
key: keyPair.serviceKey,
|
160
|
+
cert: keyPair.certificate
|
159
161
|
}, httpsServerOptions);
|
160
162
|
const secure = https.createServer(mergedHttpsServerOptions, app);
|
161
163
|
const insecure = http.createServer(app);
|
package/src/services/plugin.ts
CHANGED
@@ -91,9 +91,15 @@ export class PluginComponent {
|
|
91
91
|
const host = this.scrypted.plugins[pluginId];
|
92
92
|
let rpcObjects = 0;
|
93
93
|
let pendingResults = 0;
|
94
|
+
const pendingResultMethods: {
|
95
|
+
[method: string]: number,
|
96
|
+
} = {};
|
94
97
|
if (host.peer) {
|
95
98
|
rpcObjects = host.peer.localProxied.size + Object.keys(host.peer.remoteWeakProxies).length;
|
96
99
|
pendingResults = Object.keys(host.peer.pendingResults).length;
|
100
|
+
for (const deferred of Object.values(host.peer.pendingResults)) {
|
101
|
+
pendingResultMethods[deferred.method] = (pendingResultMethods[deferred.method] || 0) + 1;
|
102
|
+
}
|
97
103
|
}
|
98
104
|
return {
|
99
105
|
pid: host?.worker?.pid,
|
@@ -101,6 +107,7 @@ export class PluginComponent {
|
|
101
107
|
rpcObjects,
|
102
108
|
packageJson,
|
103
109
|
pendingResults,
|
110
|
+
pendingResultCounts: pendingResultMethods,
|
104
111
|
id: this.scrypted.findPluginDevice(pluginId)._id,
|
105
112
|
}
|
106
113
|
}
|