@opentdf/ctl 0.22.0-beta.235 → 0.22.0-beta.237

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/src/cli.js CHANGED
@@ -1,10 +1,11 @@
1
- import { createWriteStream, openAsBlob } from 'node:fs';
2
- import { stat } from 'node:fs/promises';
1
+ import { createWriteStream } from 'node:fs';
2
+ import { readFile } from 'node:fs/promises';
3
3
  import { Writable } from 'node:stream';
4
4
  import yargs from 'yargs';
5
5
  import { hideBin } from 'yargs/helpers';
6
6
  import { AuthProviders, version, tdfSpecVersion, OpenTDF, isPublicKeyAlgorithm, PUBLIC_KEY_ALGORITHMS, } from '@opentdf/sdk';
7
7
  import { CLIError, log } from './logger.js';
8
+ import { openFileChunker } from './file-chunker.js';
8
9
  import * as assertions from '@opentdf/sdk/assertions';
9
10
  import { base64 } from '@opentdf/sdk/encodings';
10
11
  class InvalidAuthProvider {
@@ -19,6 +20,9 @@ const integrityAlgorithms = ['hs256', 'gmac'];
19
20
  /** Flag values are case-insensitive; normalize before yargs checks `choices`. */
20
21
  const lowercaseIntegrityAlgorithm = (v) => typeof v === 'string' ? v.toLowerCase() : v;
21
22
  const asError = (value) => value instanceof Error ? value : new Error(String(value));
23
+ // TextDecoder, like Blob.text(), removes a leading UTF-8 BOM. readFile's
24
+ // 'utf8' string decoding leaves it in place, which JSON.parse rejects.
25
+ const readJsonFileText = async (path) => new TextDecoder().decode(await readFile(path));
22
26
  const parseJwt = (jwt, field = 1) => {
23
27
  return JSON.parse(base64.decode(jwt.split('.')[field]));
24
28
  };
@@ -84,8 +88,7 @@ async function parseAssertionVerificationKeys(s) {
84
88
  catch (err) {
85
89
  // try as file name:
86
90
  try {
87
- const jsonFile = await openAsBlob(s);
88
- u = JSON.parse(await jsonFile.text());
91
+ u = JSON.parse(await readJsonFileText(s));
89
92
  }
90
93
  catch (err2) {
91
94
  const cause = asError(err2);
@@ -123,7 +126,17 @@ async function parseAssertionVerificationKeys(s) {
123
126
  return u;
124
127
  }
125
128
  async function parseReadOptions(argv) {
126
- const r = { source: await fileAsSource(argv.file) };
129
+ const source = await fileAsSource(argv.file);
130
+ try {
131
+ return await parseReadOptionsFor(source, argv);
132
+ }
133
+ catch (e) {
134
+ await closeSource(source);
135
+ throw e;
136
+ }
137
+ }
138
+ async function parseReadOptionsFor(source, argv) {
139
+ const r = { source };
127
140
  if (argv.noVerifyAssertions) {
128
141
  r.noVerify = true;
129
142
  }
@@ -170,8 +183,7 @@ async function parseAssertionConfig(s) {
170
183
  catch (err) {
171
184
  // try as file name:
172
185
  try {
173
- const jsonFile = await openAsBlob(s);
174
- u = JSON.parse(await jsonFile.text());
186
+ u = JSON.parse(await readJsonFileText(s));
175
187
  }
176
188
  catch (err2) {
177
189
  const cause = asError(err2);
@@ -251,9 +263,15 @@ function parseCreateTDFFlags(argv) {
251
263
  async function parseCreateTDFOptions(argv, flags = parseCreateTDFFlags(argv)) {
252
264
  const c = { ...(await parseCreateOptions(argv)), ...flags };
253
265
  if (argv.assertions?.length) {
254
- // Reads from disk (parseAssertionConfig falls back to openAsBlob), so it
266
+ // Reads from disk (parseAssertionConfig falls back to reading a file), so it
255
267
  // stays here rather than in the pure pass.
256
- c.assertionConfigs = await parseAssertionConfig(argv.assertions);
268
+ try {
269
+ c.assertionConfigs = await parseAssertionConfig(argv.assertions);
270
+ }
271
+ catch (e) {
272
+ await closeSource(c.source);
273
+ throw e;
274
+ }
257
275
  }
258
276
  log('DEBUG', `CreateTDFOptions: ${JSON.stringify(c)}`);
259
277
  return c;
@@ -262,17 +280,32 @@ async function fileAsSource(file) {
262
280
  if (!file) {
263
281
  throw new CLIError('CRITICAL', 'Must specify file or pipe');
264
282
  }
283
+ let location;
265
284
  try {
266
- const stats = await stat(file);
267
- if (!stats?.isFile()) {
268
- throw new CLIError('CRITICAL', `File does not exist [${file}]`);
269
- }
285
+ // Not fs.openAsBlob: Node truncates a file-backed Blob's size to 32 bits,
286
+ // which breaks every read of a file >= 4 GiB (DSPX-5160).
287
+ location = await openFileChunker(file);
270
288
  }
271
289
  catch (e) {
272
- throw new CLIError('CRITICAL', `File is not accessable [${file}]`, asError(e));
290
+ const cause = asError(e);
291
+ throw new CLIError('CRITICAL', `File is not accessible [${file}]: ${cause.message}`, cause);
292
+ }
293
+ log('DEBUG', `Using input from file [${file}] (${location.size} bytes)`);
294
+ return { type: 'chunker', location };
295
+ }
296
+ /**
297
+ * Releases the file handle, if any, opened by {@link fileAsSource}. Never
298
+ * throws, so it can run in `finally` without replacing the real error.
299
+ */
300
+ async function closeSource(source) {
301
+ if (source?.type === 'chunker' && 'close' in source.location) {
302
+ try {
303
+ await source.location.close();
304
+ }
305
+ catch (e) {
306
+ log('WARNING', `Failed to close input file: ${asError(e).message}`);
307
+ }
273
308
  }
274
- log('DEBUG', `Using input from file [${file}]`);
275
- return { type: 'file-browser', location: await openAsBlob(file) };
276
309
  }
277
310
  export const handleArgs = (args) => {
278
311
  return (yargs(args)
@@ -498,8 +531,10 @@ export const handleArgs = (args) => {
498
531
  platformUrl: argv.platformUrl || guessPolicyUrl(argv),
499
532
  authProvider: new InvalidAuthProvider(),
500
533
  });
534
+ let readOptions;
501
535
  try {
502
- const reader = ct.open(await parseReadOptions(argv));
536
+ readOptions = await parseReadOptions(argv);
537
+ const reader = ct.open(readOptions);
503
538
  const manifest = await reader.manifest();
504
539
  try {
505
540
  const dataAttributes = await reader.attributes();
@@ -511,6 +546,7 @@ export const handleArgs = (args) => {
511
546
  }
512
547
  }
513
548
  finally {
549
+ await closeSource(readOptions?.source);
514
550
  ct.close();
515
551
  }
516
552
  })
@@ -544,10 +580,12 @@ export const handleArgs = (args) => {
544
580
  policyEndpoint: guessedPolicyEndpoint,
545
581
  platformUrl: argv.platformUrl || guessedPolicyEndpoint,
546
582
  });
583
+ let readOptions;
547
584
  try {
548
585
  log('SILLY', `Initialized client`);
549
586
  log('DEBUG', `About to TDF3 decrypt [${String(argv.file)}]`);
550
- const ct = await client.read(await parseReadOptions(argv));
587
+ readOptions = await parseReadOptions(argv);
588
+ const ct = await client.read(readOptions);
551
589
  const destination = argv.output ? createWriteStream(argv.output) : process.stdout;
552
590
  await ct.pipeTo(Writable.toWeb(destination));
553
591
  const lastRequest = authProvider.requestLog[authProvider.requestLog.length - 1];
@@ -581,6 +619,7 @@ export const handleArgs = (args) => {
581
619
  console.assert(!argv.dpop || dpopToken, 'DPoP requested but absent');
582
620
  }
583
621
  finally {
622
+ await closeSource(readOptions?.source);
584
623
  client.close();
585
624
  }
586
625
  })
@@ -601,30 +640,35 @@ export const handleArgs = (args) => {
601
640
  throw new CLIError('CRITICAL', 'oidcEndpoint must be specified');
602
641
  }
603
642
  const createOptions = await parseCreateTDFOptions(argv, createFlags);
604
- const authProvider = await processAuth(argv);
605
- log('DEBUG', `Initialized auth provider ${JSON.stringify(authProvider)}`);
606
- const guessedPolicyEndpoint = guessPolicyUrl(argv);
607
- const client = new OpenTDF({
608
- authProvider,
609
- defaultCreateOptions: {
610
- defaultKASEndpoint: argv.kasEndpoint,
611
- },
612
- disableDPoP: !argv.dpop,
613
- policyEndpoint: guessedPolicyEndpoint,
614
- platformUrl: argv.platformUrl || guessedPolicyEndpoint,
615
- });
616
643
  try {
617
- log('SILLY', `Initialized client`);
618
- log('DEBUG', `TDF Create`);
619
- const ct = await client.createTDF(createOptions);
620
- if (!ct) {
621
- throw new CLIError('CRITICAL', 'Encrypt configuration error: No output?');
644
+ const authProvider = await processAuth(argv);
645
+ log('DEBUG', `Initialized auth provider ${JSON.stringify(authProvider)}`);
646
+ const guessedPolicyEndpoint = guessPolicyUrl(argv);
647
+ const client = new OpenTDF({
648
+ authProvider,
649
+ defaultCreateOptions: {
650
+ defaultKASEndpoint: argv.kasEndpoint,
651
+ },
652
+ disableDPoP: !argv.dpop,
653
+ policyEndpoint: guessedPolicyEndpoint,
654
+ platformUrl: argv.platformUrl || guessedPolicyEndpoint,
655
+ });
656
+ try {
657
+ log('SILLY', `Initialized client`);
658
+ log('DEBUG', `TDF Create`);
659
+ const ct = await client.createTDF(createOptions);
660
+ if (!ct) {
661
+ throw new CLIError('CRITICAL', 'Encrypt configuration error: No output?');
662
+ }
663
+ const destination = argv.output ? createWriteStream(argv.output) : process.stdout;
664
+ await ct.pipeTo(Writable.toWeb(destination));
665
+ }
666
+ finally {
667
+ client.close();
622
668
  }
623
- const destination = argv.output ? createWriteStream(argv.output) : process.stdout;
624
- await ct.pipeTo(Writable.toWeb(destination));
625
669
  }
626
670
  finally {
627
- client.close();
671
+ await closeSource(createOptions.source);
628
672
  }
629
673
  })
630
674
  .usage('openTDF CLI\n\nUsage: $0 [options]')
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../../src/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../../src/cli.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,92 @@
1
+ import { constants } from 'node:fs';
2
+ import { open } from 'node:fs/promises';
3
+ /**
4
+ * Largest single `FileHandle.read` we issue. Node rejects reads longer than
5
+ * 2^31-1 bytes, so larger ranges are read in a loop.
6
+ */
7
+ const MAX_READ = 1 << 30;
8
+ /**
9
+ * Open flags. `O_NONBLOCK` keeps `open()` from blocking on a FIFO with no
10
+ * writer, so the `isFile()` check below can reject it; it has no effect on
11
+ * reads from regular files. Not defined on Windows, where it is not needed.
12
+ */
13
+ const OPEN_FLAGS = constants.O_RDONLY | (constants.O_NONBLOCK ?? 0);
14
+ /**
15
+ * Resolve chunker-style `[byteStart, byteEnd)` arguments against a known size,
16
+ * using the same rules as `Uint8Array.prototype.slice`: negative values count
17
+ * back from the end, and results are clamped to `[0, size]`.
18
+ */
19
+ export function resolveRange(size, byteStart, byteEnd) {
20
+ const clamp = (n) => Math.min(Math.max(n < 0 ? size + n : n, 0), size);
21
+ const start = byteStart === undefined ? 0 : clamp(byteStart);
22
+ const end = byteEnd === undefined ? size : clamp(byteEnd);
23
+ return [start, Math.max(start, end)];
24
+ }
25
+ /**
26
+ * Opens a local file for random access by explicit byte position.
27
+ *
28
+ * This exists because `fs.openAsBlob()` cannot be used for files of 4 GiB or
29
+ * more: Node reports a file-backed Blob's `size` modulo 2^32, so `slice()`
30
+ * with a negative offset (which the zip reader uses to find the central
31
+ * directory) reads from the wrong place. See nodejs/node#66207 and DSPX-5160.
32
+ *
33
+ * `FileHandle.read` takes a numeric position, which is exact up to 2^53, so
34
+ * this works for any file size the SDK can otherwise handle.
35
+ *
36
+ * The returned function can be passed as `{ type: 'chunker', location }` to
37
+ * both decrypt (random access) and encrypt (read sequentially in chunks until
38
+ * an empty chunk is returned). Call `close()` when finished.
39
+ */
40
+ export async function openFileChunker(path) {
41
+ const handle = await open(path, OPEN_FLAGS);
42
+ let size;
43
+ let originalStats;
44
+ try {
45
+ const stats = await handle.stat({ bigint: true });
46
+ if (!stats.isFile()) {
47
+ throw new Error(`not a regular file [${path}]`);
48
+ }
49
+ if (stats.size > BigInt(Number.MAX_SAFE_INTEGER)) {
50
+ throw new Error(`file is too large to address safely [${path}]`);
51
+ }
52
+ size = Number(stats.size);
53
+ originalStats = stats;
54
+ }
55
+ catch (e) {
56
+ // Report why the file was rejected, not a secondary close failure.
57
+ await handle.close().catch(() => { });
58
+ throw e;
59
+ }
60
+ let closed;
61
+ const assertUnchanged = async () => {
62
+ const stats = await handle.stat({ bigint: true });
63
+ if (stats.size !== originalStats.size ||
64
+ stats.mtimeNs !== originalStats.mtimeNs ||
65
+ stats.ctimeNs !== originalStats.ctimeNs) {
66
+ throw new Error(`file changed while reading [${path}]`);
67
+ }
68
+ };
69
+ const chunker = async (byteStart, byteEnd) => {
70
+ if (closed) {
71
+ throw new Error(`file is closed [${path}]`);
72
+ }
73
+ const [start, end] = resolveRange(size, byteStart, byteEnd);
74
+ const buf = new Uint8Array(end - start);
75
+ let filled = 0;
76
+ while (filled < buf.length) {
77
+ const length = Math.min(buf.length - filled, MAX_READ);
78
+ const { bytesRead } = await handle.read(buf, filled, length, start + filled);
79
+ if (bytesRead === 0) {
80
+ throw new Error(`file changed while reading [${path}]`);
81
+ }
82
+ filled += bytesRead;
83
+ }
84
+ await assertUnchanged();
85
+ return buf;
86
+ };
87
+ return Object.assign(chunker, {
88
+ size,
89
+ close: () => (closed ??= handle.close()),
90
+ });
91
+ }
92
+ //# sourceMappingURL=file-chunker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"file-chunker.js","sourceRoot":"","sources":["../../src/file-chunker.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@opentdf/ctl",
3
- "version": "0.22.0-beta.235",
3
+ "version": "0.22.0-beta.237",
4
4
  "description": "Node based CLI for opentdf",
5
5
  "repository": {
6
6
  "type": "git",
@@ -55,7 +55,7 @@
55
55
  "diff": "^8.0.3"
56
56
  },
57
57
  "dependencies": {
58
- "@opentdf/sdk": "^0.22.0-beta.235",
58
+ "@opentdf/sdk": "^0.22.0-beta.237",
59
59
  "yargs": "^18.0.0"
60
60
  }
61
61
  }