@stanleysun233/oneproxy-cli 1.0.11 → 1.0.12
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/commands.js +1 -0
- package/dist/commands.js.map +1 -1
- package/dist/control-plane.d.ts +1 -0
- package/dist/control-plane.js +43 -7
- package/dist/control-plane.js.map +1 -1
- package/dist/daemon/http-proxy.d.ts +2 -1
- package/dist/daemon/http-proxy.js +14 -8
- package/dist/daemon/http-proxy.js.map +1 -1
- package/dist/daemon/lifecycle.d.ts +1 -0
- package/dist/daemon/lifecycle.js +2 -1
- package/dist/daemon/lifecycle.js.map +1 -1
- package/dist/daemon/router.d.ts +2 -1
- package/dist/daemon/router.js +3 -0
- package/dist/daemon/router.js.map +1 -1
- package/dist/main.js +18 -4
- package/dist/main.js.map +1 -1
- package/dist/run-isolation.d.ts +22 -0
- package/dist/run-isolation.js +249 -0
- package/dist/run-isolation.js.map +1 -0
- package/dist/session-env.d.ts +7 -5
- package/dist/session-env.js +109 -101
- package/dist/session-env.js.map +1 -1
- package/dist/shell-detect.d.ts +8 -0
- package/dist/shell-detect.js +69 -0
- package/dist/shell-detect.js.map +1 -0
- package/dist/shell.js +9 -21
- package/dist/shell.js.map +1 -1
- package/dist/storage.d.ts +2 -0
- package/dist/storage.js.map +1 -1
- package/dist/update-check.d.ts +2 -0
- package/dist/update-check.js +141 -0
- package/dist/update-check.js.map +1 -0
- package/package.json +1 -1
|
@@ -0,0 +1,249 @@
|
|
|
1
|
+
import { execFile } from 'node:child_process';
|
|
2
|
+
import { spawn } from 'node:child_process';
|
|
3
|
+
import * as fs from 'node:fs/promises';
|
|
4
|
+
import * as fsSync from 'node:fs';
|
|
5
|
+
import * as path from 'node:path';
|
|
6
|
+
import { promisify } from 'node:util';
|
|
7
|
+
const execFileAsync = promisify(execFile);
|
|
8
|
+
const cgroupRoot = '/sys/fs/cgroup';
|
|
9
|
+
export async function runProxyOnlyIsolatedCommand(input) {
|
|
10
|
+
await requireProxyIsolationSupport();
|
|
11
|
+
const cgroup = await createRunCgroup().catch((error) => {
|
|
12
|
+
throw proxyIsolationUnavailable('cgroup_create_failed', 'onep run could not create cgroup isolation.', error);
|
|
13
|
+
});
|
|
14
|
+
const rules = firewallRules(input.proxyPort, cgroup.relativePath);
|
|
15
|
+
const installed = [];
|
|
16
|
+
try {
|
|
17
|
+
for (const rule of [...rules].reverse()) {
|
|
18
|
+
await execFileAsync(rule.command, rule.add).catch((error) => {
|
|
19
|
+
throw proxyIsolationUnavailable('firewall_install_failed', 'onep run could not install proxy isolation firewall rules.', error);
|
|
20
|
+
});
|
|
21
|
+
installed.push(rule);
|
|
22
|
+
}
|
|
23
|
+
return await spawnInCgroup(input, cgroup.path);
|
|
24
|
+
}
|
|
25
|
+
finally {
|
|
26
|
+
await killCgroupProcesses(cgroup.path);
|
|
27
|
+
for (const rule of installed) {
|
|
28
|
+
await execFileAsync(rule.command, rule.remove).catch(() => { });
|
|
29
|
+
}
|
|
30
|
+
await fs.rm(cgroup.path, { recursive: true, force: true });
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
export async function runProxyOnlyBestEffortCommand(input) {
|
|
34
|
+
const child = spawn(input.executable, input.args, {
|
|
35
|
+
stdio: 'inherit',
|
|
36
|
+
env: input.env
|
|
37
|
+
});
|
|
38
|
+
if (!child.pid) {
|
|
39
|
+
throw Object.assign(new Error('Unable to start command.'), { code: 'COMMAND_NOT_FOUND' });
|
|
40
|
+
}
|
|
41
|
+
const signalHandlers = installSignalHandlers(child.pid);
|
|
42
|
+
try {
|
|
43
|
+
return await waitForChild(child);
|
|
44
|
+
}
|
|
45
|
+
finally {
|
|
46
|
+
for (const [signal, handler] of signalHandlers) {
|
|
47
|
+
process.off(signal, handler);
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
export function isProxyIsolationUnavailable(error) {
|
|
52
|
+
return typeof error === 'object' && error !== null && 'code' in error && error.code === 'PROXY_ISOLATION_REQUIRED';
|
|
53
|
+
}
|
|
54
|
+
export function proxyIsolationHelp(error) {
|
|
55
|
+
if (!isProxyIsolationUnavailable(error)) {
|
|
56
|
+
return [];
|
|
57
|
+
}
|
|
58
|
+
const reason = error.reason;
|
|
59
|
+
switch (reason) {
|
|
60
|
+
case 'not_root':
|
|
61
|
+
return ['For strict isolation, run: sudo onep run <command...>'];
|
|
62
|
+
case 'missing_iptables':
|
|
63
|
+
return [
|
|
64
|
+
'Install iptables/ip6tables for strict isolation:',
|
|
65
|
+
' Debian/Ubuntu: sudo apt-get install iptables',
|
|
66
|
+
' Fedora/RHEL: sudo dnf install iptables iptables-nft',
|
|
67
|
+
' Arch: sudo pacman -S iptables'
|
|
68
|
+
];
|
|
69
|
+
case 'missing_cgroup_v2':
|
|
70
|
+
return [
|
|
71
|
+
'Enable cgroup v2 at /sys/fs/cgroup for strict isolation.',
|
|
72
|
+
'cgroup v2 is a Linux host capability, not a OneProxy package dependency.',
|
|
73
|
+
'On systemd Linux, /sys/fs/cgroup should be mounted as cgroup2fs.'
|
|
74
|
+
];
|
|
75
|
+
case 'cgroup_create_failed':
|
|
76
|
+
return ['Check that cgroup v2 is mounted at /sys/fs/cgroup and writable by root.'];
|
|
77
|
+
case 'firewall_install_failed':
|
|
78
|
+
return [
|
|
79
|
+
'Check that iptables/ip6tables and the cgroup match module are available.',
|
|
80
|
+
' Debian/Ubuntu: sudo apt-get install iptables',
|
|
81
|
+
' Fedora/RHEL: sudo dnf install iptables iptables-nft',
|
|
82
|
+
' Arch: sudo pacman -S iptables'
|
|
83
|
+
];
|
|
84
|
+
case 'non_linux':
|
|
85
|
+
return ['Strict isolation is only available on Linux.'];
|
|
86
|
+
default:
|
|
87
|
+
return [];
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
async function requireProxyIsolationSupport() {
|
|
91
|
+
if (process.platform !== 'linux') {
|
|
92
|
+
throw proxyIsolationUnavailable('non_linux', 'onep run requires Linux proxy isolation.');
|
|
93
|
+
}
|
|
94
|
+
if (typeof process.getuid !== 'function' || process.getuid() !== 0) {
|
|
95
|
+
throw proxyIsolationUnavailable('not_root', 'onep run requires root so direct network egress can be blocked.');
|
|
96
|
+
}
|
|
97
|
+
if (!fsSync.existsSync(path.join(cgroupRoot, 'cgroup.controllers'))) {
|
|
98
|
+
throw proxyIsolationUnavailable('missing_cgroup_v2', 'onep run requires cgroup v2 at /sys/fs/cgroup.');
|
|
99
|
+
}
|
|
100
|
+
await Promise.all([
|
|
101
|
+
execFileAsync('iptables', ['--version']),
|
|
102
|
+
execFileAsync('ip6tables', ['--version'])
|
|
103
|
+
]).catch((error) => {
|
|
104
|
+
throw proxyIsolationUnavailable('missing_iptables', 'onep run requires iptables and ip6tables for proxy isolation.', error);
|
|
105
|
+
});
|
|
106
|
+
}
|
|
107
|
+
function proxyIsolationUnavailable(reason, message, cause) {
|
|
108
|
+
return Object.assign(new Error(message), { code: 'PROXY_ISOLATION_REQUIRED', exitCode: 2, reason, cause });
|
|
109
|
+
}
|
|
110
|
+
async function createRunCgroup() {
|
|
111
|
+
const relativePath = `oneproxy-run-${process.pid}-${Date.now()}`;
|
|
112
|
+
const cgroupPath = path.join(cgroupRoot, relativePath);
|
|
113
|
+
await fs.mkdir(cgroupPath, { mode: 0o700 });
|
|
114
|
+
return { path: cgroupPath, relativePath };
|
|
115
|
+
}
|
|
116
|
+
function firewallRules(proxyPort, cgroupPath) {
|
|
117
|
+
return [
|
|
118
|
+
rule('iptables', [
|
|
119
|
+
'-p', 'tcp',
|
|
120
|
+
'-m', 'cgroup', '--path', cgroupPath,
|
|
121
|
+
'-d', '127.0.0.1/32',
|
|
122
|
+
'--dport', String(proxyPort),
|
|
123
|
+
'-j', 'ACCEPT'
|
|
124
|
+
]),
|
|
125
|
+
rule('iptables', [
|
|
126
|
+
'-m', 'cgroup', '--path', cgroupPath,
|
|
127
|
+
'-j', 'REJECT'
|
|
128
|
+
]),
|
|
129
|
+
rule('ip6tables', [
|
|
130
|
+
'-m', 'cgroup', '--path', cgroupPath,
|
|
131
|
+
'-j', 'REJECT'
|
|
132
|
+
])
|
|
133
|
+
];
|
|
134
|
+
}
|
|
135
|
+
function rule(command, match) {
|
|
136
|
+
return {
|
|
137
|
+
command,
|
|
138
|
+
add: ['-I', 'OUTPUT', '1', ...match],
|
|
139
|
+
remove: ['-D', 'OUTPUT', ...match]
|
|
140
|
+
};
|
|
141
|
+
}
|
|
142
|
+
async function spawnInCgroup(input, cgroupPath) {
|
|
143
|
+
const child = spawn('/bin/sh', ['-c', 'kill -STOP $$; exec "$@"', 'onep-run-child', input.executable, ...input.args], {
|
|
144
|
+
stdio: 'inherit',
|
|
145
|
+
env: input.env,
|
|
146
|
+
...originalUserIdentity()
|
|
147
|
+
});
|
|
148
|
+
if (!child.pid) {
|
|
149
|
+
throw Object.assign(new Error('Unable to start isolated command.'), { code: 'COMMAND_NOT_FOUND' });
|
|
150
|
+
}
|
|
151
|
+
const signalHandlers = installSignalHandlers(child.pid);
|
|
152
|
+
try {
|
|
153
|
+
await fs.writeFile(path.join(cgroupPath, 'cgroup.procs'), String(child.pid));
|
|
154
|
+
process.kill(child.pid, 'SIGCONT');
|
|
155
|
+
return await waitForChild(child);
|
|
156
|
+
}
|
|
157
|
+
catch (error) {
|
|
158
|
+
try {
|
|
159
|
+
process.kill(child.pid, 'SIGKILL');
|
|
160
|
+
}
|
|
161
|
+
catch { }
|
|
162
|
+
throw error;
|
|
163
|
+
}
|
|
164
|
+
finally {
|
|
165
|
+
for (const [signal, handler] of signalHandlers) {
|
|
166
|
+
process.off(signal, handler);
|
|
167
|
+
}
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
function installSignalHandlers(childPid) {
|
|
171
|
+
const signals = ['SIGINT', 'SIGTERM', 'SIGHUP'];
|
|
172
|
+
return signals.map((signal) => {
|
|
173
|
+
const handler = () => {
|
|
174
|
+
try {
|
|
175
|
+
process.kill(childPid, signal);
|
|
176
|
+
}
|
|
177
|
+
catch { }
|
|
178
|
+
};
|
|
179
|
+
process.on(signal, handler);
|
|
180
|
+
return [signal, handler];
|
|
181
|
+
});
|
|
182
|
+
}
|
|
183
|
+
function waitForChild(child) {
|
|
184
|
+
return new Promise((resolve, reject) => {
|
|
185
|
+
child.once('error', (error) => {
|
|
186
|
+
if (error.code === 'ENOENT') {
|
|
187
|
+
reject(Object.assign(new Error(`Command not found: ${child.spawnfile}`), { code: 'COMMAND_NOT_FOUND' }));
|
|
188
|
+
return;
|
|
189
|
+
}
|
|
190
|
+
reject(error);
|
|
191
|
+
});
|
|
192
|
+
child.once('exit', (code, signal) => resolve(signal ? 1 : code ?? 0));
|
|
193
|
+
});
|
|
194
|
+
}
|
|
195
|
+
async function killCgroupProcesses(cgroupPath) {
|
|
196
|
+
for (let attempt = 0; attempt < 20; attempt += 1) {
|
|
197
|
+
const pids = await readCgroupPids(cgroupPath);
|
|
198
|
+
if (pids.length === 0) {
|
|
199
|
+
return;
|
|
200
|
+
}
|
|
201
|
+
for (const pid of pids) {
|
|
202
|
+
try {
|
|
203
|
+
process.kill(pid, 'SIGKILL');
|
|
204
|
+
}
|
|
205
|
+
catch { }
|
|
206
|
+
}
|
|
207
|
+
await new Promise((resolve) => setTimeout(resolve, 25));
|
|
208
|
+
}
|
|
209
|
+
const pids = await readCgroupPids(cgroupPath);
|
|
210
|
+
if (pids.length > 0) {
|
|
211
|
+
throw Object.assign(new Error('Unable to stop isolated child processes; firewall rules were left installed to prevent direct egress.'), { code: 'PROXY_ISOLATION_CLEANUP_FAILED' });
|
|
212
|
+
}
|
|
213
|
+
}
|
|
214
|
+
async function readCgroupPids(cgroupPath) {
|
|
215
|
+
try {
|
|
216
|
+
const body = await fs.readFile(path.join(cgroupPath, 'cgroup.procs'), 'utf8');
|
|
217
|
+
return body
|
|
218
|
+
.split(/\s+/)
|
|
219
|
+
.map((value) => Number(value))
|
|
220
|
+
.filter((pid) => Number.isInteger(pid) && pid > 0);
|
|
221
|
+
}
|
|
222
|
+
catch {
|
|
223
|
+
return [];
|
|
224
|
+
}
|
|
225
|
+
}
|
|
226
|
+
function originalUserIdentity() {
|
|
227
|
+
if (typeof process.getuid !== 'function' || process.getuid() !== 0) {
|
|
228
|
+
return {};
|
|
229
|
+
}
|
|
230
|
+
const uid = numericEnv('SUDO_UID');
|
|
231
|
+
const gid = numericEnv('SUDO_GID');
|
|
232
|
+
if (uid === undefined || gid === undefined || uid === 0 || gid === 0) {
|
|
233
|
+
return {};
|
|
234
|
+
}
|
|
235
|
+
return { uid, gid };
|
|
236
|
+
}
|
|
237
|
+
function numericEnv(key) {
|
|
238
|
+
const value = process.env[key];
|
|
239
|
+
if (!value || !/^\d+$/.test(value)) {
|
|
240
|
+
return undefined;
|
|
241
|
+
}
|
|
242
|
+
return Number(value);
|
|
243
|
+
}
|
|
244
|
+
export const runIsolationInternals = {
|
|
245
|
+
isProxyIsolationUnavailable,
|
|
246
|
+
proxyIsolationHelp,
|
|
247
|
+
firewallRules
|
|
248
|
+
};
|
|
249
|
+
//# sourceMappingURL=run-isolation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"run-isolation.js","sourceRoot":"","sources":["../src/run-isolation.ts"],"names":[],"mappings":"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"}
|
package/dist/session-env.d.ts
CHANGED
|
@@ -1,11 +1,13 @@
|
|
|
1
1
|
import type { CliContext } from './main.ts';
|
|
2
2
|
import { type DaemonBindings } from './storage.ts';
|
|
3
3
|
export declare function ensureSessionProxyBindings(): Promise<DaemonBindings>;
|
|
4
|
-
export declare function proxyEnv(bindings: DaemonBindings): Record<string, string>;
|
|
5
|
-
export declare function
|
|
6
|
-
export declare function
|
|
7
|
-
export declare function
|
|
8
|
-
export declare function
|
|
4
|
+
export declare function proxyEnv(bindings: DaemonBindings, extraNoProxyHosts?: string[]): Record<string, string>;
|
|
5
|
+
export declare function proxyOnlyEnv(bindings: DaemonBindings): Record<string, string>;
|
|
6
|
+
export declare function sessionProxyEnv(bindings?: DaemonBindings): Promise<Record<string, string>>;
|
|
7
|
+
export declare function parseEnvCommandArgs(argv: string[]): {};
|
|
8
|
+
export declare function envOn(args?: string[]): Promise<void>;
|
|
9
|
+
export declare function envOff(args?: string[]): Promise<void>;
|
|
10
|
+
export declare function runCommand(args: string[], context: CliContext): Promise<number>;
|
|
9
11
|
export declare function parseRunCommandArgs(argv: string[]): {
|
|
10
12
|
args: string[];
|
|
11
13
|
tui: boolean;
|
package/dist/session-env.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
1
|
+
import { isProxyIsolationUnavailable, proxyIsolationHelp, runProxyOnlyBestEffortCommand, runProxyOnlyIsolatedCommand } from "./run-isolation.js";
|
|
2
|
+
import { detectShellFamily } from "./shell-detect.js";
|
|
3
|
+
import { readConfig, readState } from "./storage.js";
|
|
4
4
|
const preservedProxyVariables = [
|
|
5
5
|
'HTTP_PROXY',
|
|
6
6
|
'HTTPS_PROXY',
|
|
@@ -27,34 +27,74 @@ export async function ensureSessionProxyBindings() {
|
|
|
27
27
|
}
|
|
28
28
|
return lifecycle;
|
|
29
29
|
}
|
|
30
|
-
export function proxyEnv(bindings) {
|
|
30
|
+
export function proxyEnv(bindings, extraNoProxyHosts = []) {
|
|
31
31
|
const httpProxy = `http://${bindings.host}:${bindings.httpPort}`;
|
|
32
32
|
const httpsProxy = `http://${bindings.host}:${bindings.httpsPort}`;
|
|
33
|
+
const noProxy = noProxyValue(extraNoProxyHosts);
|
|
33
34
|
return {
|
|
34
35
|
HTTP_PROXY: httpProxy,
|
|
35
36
|
HTTPS_PROXY: httpsProxy,
|
|
36
37
|
ALL_PROXY: httpProxy,
|
|
37
|
-
NO_PROXY:
|
|
38
|
+
NO_PROXY: noProxy,
|
|
39
|
+
http_proxy: httpProxy,
|
|
40
|
+
https_proxy: httpsProxy,
|
|
41
|
+
all_proxy: httpProxy,
|
|
42
|
+
no_proxy: noProxy,
|
|
38
43
|
ONEPROXY_ACTIVE: '1',
|
|
39
44
|
ONEPROXY_HTTP_PORT: String(bindings.httpPort),
|
|
40
45
|
ONEPROXY_HTTPS_PORT: String(bindings.httpsPort)
|
|
41
46
|
};
|
|
42
47
|
}
|
|
43
|
-
export
|
|
44
|
-
|
|
48
|
+
export function proxyOnlyEnv(bindings) {
|
|
49
|
+
if (!bindings.proxyOnlyPort) {
|
|
50
|
+
throw Object.assign(new Error('Daemon did not return proxy-only binding'), { code: 'DAEMON_UNAVAILABLE' });
|
|
51
|
+
}
|
|
52
|
+
const proxy = `http://${bindings.host}:${bindings.proxyOnlyPort}`;
|
|
53
|
+
return {
|
|
54
|
+
HTTP_PROXY: proxy,
|
|
55
|
+
HTTPS_PROXY: proxy,
|
|
56
|
+
ALL_PROXY: proxy,
|
|
57
|
+
NO_PROXY: '',
|
|
58
|
+
http_proxy: proxy,
|
|
59
|
+
https_proxy: proxy,
|
|
60
|
+
all_proxy: proxy,
|
|
61
|
+
no_proxy: '',
|
|
62
|
+
ONEPROXY_ACTIVE: '1',
|
|
63
|
+
ONEPROXY_PROXY_ONLY: '1',
|
|
64
|
+
ONEPROXY_HTTP_PORT: String(bindings.proxyOnlyPort),
|
|
65
|
+
ONEPROXY_HTTPS_PORT: String(bindings.proxyOnlyPort)
|
|
66
|
+
};
|
|
67
|
+
}
|
|
68
|
+
export async function sessionProxyEnv(bindings) {
|
|
69
|
+
const resolvedBindings = bindings ?? await ensureSessionProxyBindings();
|
|
70
|
+
const env = proxyEnv(resolvedBindings);
|
|
71
|
+
const noProxy = noProxyValue(await proxyBypassHosts());
|
|
72
|
+
return {
|
|
73
|
+
...env,
|
|
74
|
+
NO_PROXY: noProxy,
|
|
75
|
+
no_proxy: noProxy
|
|
76
|
+
};
|
|
45
77
|
}
|
|
46
|
-
function
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
78
|
+
function noProxyValue(extraHosts = []) {
|
|
79
|
+
return [...new Set(['localhost', '127.0.0.1', '::1', ...extraHosts].map((item) => item.trim()).filter(Boolean))].join(',');
|
|
80
|
+
}
|
|
81
|
+
async function proxyBypassHosts() {
|
|
82
|
+
const [config, state] = await Promise.all([readConfig(), readState()]);
|
|
83
|
+
return [
|
|
84
|
+
hostnameFromUrl(config.controlPlaneUrl),
|
|
85
|
+
...(state.bootstrap?.entryNodes ?? []).map((node) => node.host)
|
|
86
|
+
].filter(Boolean);
|
|
87
|
+
}
|
|
88
|
+
function hostnameFromUrl(value) {
|
|
89
|
+
if (!value) {
|
|
90
|
+
return '';
|
|
50
91
|
}
|
|
51
|
-
|
|
52
|
-
return
|
|
92
|
+
try {
|
|
93
|
+
return new URL(value).hostname;
|
|
53
94
|
}
|
|
54
|
-
|
|
55
|
-
return '
|
|
95
|
+
catch {
|
|
96
|
+
return '';
|
|
56
97
|
}
|
|
57
|
-
return 'posix';
|
|
58
98
|
}
|
|
59
99
|
function quotePosix(value) {
|
|
60
100
|
return `'${value.replace(/'/g, "'\\''")}'`;
|
|
@@ -148,9 +188,8 @@ function cmdOff() {
|
|
|
148
188
|
}
|
|
149
189
|
return `${lines.join('\r\n')}\r\n`;
|
|
150
190
|
}
|
|
151
|
-
function activationScript(
|
|
152
|
-
|
|
153
|
-
switch (shellFamily()) {
|
|
191
|
+
function activationScript(env) {
|
|
192
|
+
switch (detectShellFamily()) {
|
|
154
193
|
case 'fish':
|
|
155
194
|
return fishOn(env);
|
|
156
195
|
case 'powershell':
|
|
@@ -162,7 +201,7 @@ function activationScript(bindings) {
|
|
|
162
201
|
}
|
|
163
202
|
}
|
|
164
203
|
function deactivationScript() {
|
|
165
|
-
switch (
|
|
204
|
+
switch (detectShellFamily()) {
|
|
166
205
|
case 'fish':
|
|
167
206
|
return fishOff();
|
|
168
207
|
case 'powershell':
|
|
@@ -173,72 +212,69 @@ function deactivationScript() {
|
|
|
173
212
|
return posixOff();
|
|
174
213
|
}
|
|
175
214
|
}
|
|
176
|
-
export
|
|
177
|
-
|
|
178
|
-
}
|
|
179
|
-
|
|
180
|
-
|
|
215
|
+
export function parseEnvCommandArgs(argv) {
|
|
216
|
+
for (const value of argv) {
|
|
217
|
+
throw Object.assign(new Error(`Unknown env option: ${value}`), { code: 'SYNTAX_ERROR', exitCode: 2 });
|
|
218
|
+
}
|
|
219
|
+
return {};
|
|
181
220
|
}
|
|
182
|
-
function
|
|
183
|
-
|
|
221
|
+
export async function envOn(args = []) {
|
|
222
|
+
parseEnvCommandArgs(args);
|
|
223
|
+
process.stdout.write(activationScript(await sessionProxyEnv()));
|
|
184
224
|
}
|
|
185
|
-
function
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
return spawn(shell, ['/d', '/s', '/c', command], {
|
|
189
|
-
stdio: 'inherit',
|
|
190
|
-
windowsHide: false,
|
|
191
|
-
env
|
|
192
|
-
});
|
|
225
|
+
export async function envOff(args = []) {
|
|
226
|
+
parseEnvCommandArgs(args);
|
|
227
|
+
process.stdout.write(deactivationScript());
|
|
193
228
|
}
|
|
194
|
-
export async function runCommand(args,
|
|
229
|
+
export async function runCommand(args, context) {
|
|
195
230
|
const parsed = parseRunCommandArgs(args);
|
|
196
231
|
const executable = parsed.args[0];
|
|
197
232
|
if (!executable) {
|
|
198
233
|
throw Object.assign(new Error('run requires a command.'), { code: 'COMMAND_NOT_FOUND', exitCode: 2 });
|
|
199
234
|
}
|
|
200
|
-
if (!_context.json) {
|
|
201
|
-
const tuiExitCode = await tryRunCommandTui(executable, parsed.args.slice(1));
|
|
202
|
-
if (tuiExitCode !== null) {
|
|
203
|
-
return tuiExitCode;
|
|
204
|
-
}
|
|
205
|
-
}
|
|
206
235
|
const lifecycle = (await import("./daemon/lifecycle.js"));
|
|
207
236
|
const session = await lifecycle.startDaemonSession?.();
|
|
208
237
|
if (!session) {
|
|
209
238
|
throw Object.assign(new Error('Daemon lifecycle is unavailable'), { code: 'DAEMON_UNAVAILABLE' });
|
|
210
239
|
}
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
240
|
+
try {
|
|
241
|
+
const proxyOnlyPort = session.metadata.bindings.proxyOnlyPort;
|
|
242
|
+
if (!proxyOnlyPort) {
|
|
243
|
+
throw Object.assign(new Error('Daemon did not return proxy-only binding'), { code: 'DAEMON_UNAVAILABLE' });
|
|
244
|
+
}
|
|
245
|
+
const runInput = {
|
|
246
|
+
executable,
|
|
247
|
+
args: parsed.args.slice(1),
|
|
248
|
+
env: {
|
|
249
|
+
...process.env,
|
|
250
|
+
...proxyOnlyEnv(session.metadata.bindings)
|
|
251
|
+
},
|
|
252
|
+
proxyPort: proxyOnlyPort
|
|
253
|
+
};
|
|
254
|
+
try {
|
|
255
|
+
return await runProxyOnlyIsolatedCommand(runInput);
|
|
256
|
+
}
|
|
257
|
+
catch (error) {
|
|
258
|
+
if (!isProxyIsolationUnavailable(error)) {
|
|
259
|
+
throw error;
|
|
260
|
+
}
|
|
261
|
+
if (!context.json) {
|
|
262
|
+
process.stderr.write(proxyIsolationFallbackMessage(error));
|
|
263
|
+
}
|
|
264
|
+
return await runProxyOnlyBestEffortCommand(runInput);
|
|
265
|
+
}
|
|
266
|
+
}
|
|
267
|
+
finally {
|
|
268
|
+
await session.end();
|
|
269
|
+
}
|
|
270
|
+
}
|
|
271
|
+
function proxyIsolationFallbackMessage(error) {
|
|
272
|
+
const lines = [
|
|
273
|
+
'onep run: strict proxy isolation is unavailable; falling back to proxy environment mode.',
|
|
274
|
+
'Programs that ignore HTTP_PROXY/HTTPS_PROXY/ALL_PROXY may bypass OneProxy.',
|
|
275
|
+
...proxyIsolationHelp(error)
|
|
276
|
+
];
|
|
277
|
+
return `${lines.join('\n')}\n`;
|
|
242
278
|
}
|
|
243
279
|
export function parseRunCommandArgs(argv) {
|
|
244
280
|
return stripTuiFlag(argv);
|
|
@@ -256,32 +292,4 @@ function stripTuiFlag(argv) {
|
|
|
256
292
|
}
|
|
257
293
|
return { args, tui };
|
|
258
294
|
}
|
|
259
|
-
async function tryRunCommandTui(executable, args) {
|
|
260
|
-
const lifecycle = (await import("./daemon/lifecycle.js"));
|
|
261
|
-
const session = await lifecycle.startDaemonSession?.();
|
|
262
|
-
if (!session) {
|
|
263
|
-
throw Object.assign(new Error('Daemon lifecycle is unavailable'), { code: 'DAEMON_UNAVAILABLE' });
|
|
264
|
-
}
|
|
265
|
-
try {
|
|
266
|
-
const result = await runTuiCommand({
|
|
267
|
-
executable,
|
|
268
|
-
args,
|
|
269
|
-
env: {
|
|
270
|
-
...process.env,
|
|
271
|
-
...proxyEnv(session.metadata.bindings)
|
|
272
|
-
},
|
|
273
|
-
status: await buildTuiStatusSnapshot()
|
|
274
|
-
});
|
|
275
|
-
if (!result.available) {
|
|
276
|
-
return null;
|
|
277
|
-
}
|
|
278
|
-
if (typeof result.exitCode !== 'number') {
|
|
279
|
-
throw Object.assign(new Error('TUI exited without a child exit code'), { code: 'TUI_RUNTIME_ERROR' });
|
|
280
|
-
}
|
|
281
|
-
return result.exitCode;
|
|
282
|
-
}
|
|
283
|
-
finally {
|
|
284
|
-
await session.end();
|
|
285
|
-
}
|
|
286
|
-
}
|
|
287
295
|
//# sourceMappingURL=session-env.js.map
|
package/dist/session-env.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session-env.js","sourceRoot":"","sources":["../src/session-env.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"session-env.js","sourceRoot":"","sources":["../src/session-env.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export type ShellFamily = 'posix' | 'fish' | 'powershell' | 'cmd';
|
|
2
|
+
export type ShellDetectionInput = {
|
|
3
|
+
env?: Record<string, string | undefined>;
|
|
4
|
+
parentShell?: string;
|
|
5
|
+
platform?: NodeJS.Platform;
|
|
6
|
+
};
|
|
7
|
+
export declare function detectShellPath(input?: ShellDetectionInput): string;
|
|
8
|
+
export declare function detectShellFamily(input?: ShellDetectionInput): ShellFamily;
|