Commit 1166ef6
committed
fix(cli): add TTY support, phase check, and hardening to sandbox exec
Add missing --tty/--no-tty flag required by the issue spec, plumbed
through proto, CLI, and server-side PTY allocation over SSH.
Harden the implementation with a client-side sandbox phase check,
a 4 MiB stdin size limit to prevent OOM, and spawn_blocking for
stdin reads to avoid blocking the async runtime. Move
save_last_sandbox after exec succeeds for consistency.
Closes #7501 parent 6bc4ba6 commit 1166ef6
File tree
4 files changed
+104
-15
lines changed- crates
- openshell-cli/src
- openshell-server/src
- proto
4 files changed
+104
-15
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1200 | 1200 | | |
1201 | 1201 | | |
1202 | 1202 | | |
| 1203 | + | |
| 1204 | + | |
| 1205 | + | |
| 1206 | + | |
| 1207 | + | |
1203 | 1208 | | |
1204 | 1209 | | |
1205 | 1210 | | |
| |||
1218 | 1223 | | |
1219 | 1224 | | |
1220 | 1225 | | |
| 1226 | + | |
| 1227 | + | |
| 1228 | + | |
| 1229 | + | |
| 1230 | + | |
| 1231 | + | |
| 1232 | + | |
| 1233 | + | |
| 1234 | + | |
| 1235 | + | |
| 1236 | + | |
1221 | 1237 | | |
1222 | 1238 | | |
1223 | 1239 | | |
| |||
2107 | 2123 | | |
2108 | 2124 | | |
2109 | 2125 | | |
| 2126 | + | |
| 2127 | + | |
2110 | 2128 | | |
2111 | 2129 | | |
2112 | 2130 | | |
2113 | | - | |
| 2131 | + | |
| 2132 | + | |
| 2133 | + | |
| 2134 | + | |
| 2135 | + | |
| 2136 | + | |
| 2137 | + | |
| 2138 | + | |
2114 | 2139 | | |
2115 | 2140 | | |
2116 | 2141 | | |
2117 | 2142 | | |
2118 | 2143 | | |
2119 | 2144 | | |
2120 | 2145 | | |
| 2146 | + | |
2121 | 2147 | | |
2122 | 2148 | | |
2123 | 2149 | | |
| 2150 | + | |
2124 | 2151 | | |
2125 | 2152 | | |
2126 | 2153 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
24 | 24 | | |
25 | 25 | | |
26 | 26 | | |
27 | | - | |
28 | | - | |
29 | | - | |
30 | | - | |
31 | | - | |
32 | | - | |
33 | | - | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
34 | 33 | | |
35 | 34 | | |
36 | 35 | | |
| |||
2599 | 2598 | | |
2600 | 2599 | | |
2601 | 2600 | | |
| 2601 | + | |
| 2602 | + | |
| 2603 | + | |
| 2604 | + | |
2602 | 2605 | | |
2603 | 2606 | | |
2604 | 2607 | | |
| |||
2609 | 2612 | | |
2610 | 2613 | | |
2611 | 2614 | | |
| 2615 | + | |
2612 | 2616 | | |
2613 | 2617 | | |
2614 | 2618 | | |
| |||
2624 | 2628 | | |
2625 | 2629 | | |
2626 | 2630 | | |
| 2631 | + | |
| 2632 | + | |
| 2633 | + | |
| 2634 | + | |
| 2635 | + | |
| 2636 | + | |
| 2637 | + | |
| 2638 | + | |
| 2639 | + | |
2627 | 2640 | | |
2628 | 2641 | | |
2629 | 2642 | | |
2630 | 2643 | | |
2631 | 2644 | | |
2632 | | - | |
| 2645 | + | |
| 2646 | + | |
| 2647 | + | |
| 2648 | + | |
2633 | 2649 | | |
2634 | 2650 | | |
2635 | 2651 | | |
2636 | 2652 | | |
2637 | 2653 | | |
2638 | | - | |
| 2654 | + | |
| 2655 | + | |
2639 | 2656 | | |
2640 | | - | |
2641 | | - | |
2642 | | - | |
| 2657 | + | |
| 2658 | + | |
| 2659 | + | |
| 2660 | + | |
| 2661 | + | |
| 2662 | + | |
| 2663 | + | |
| 2664 | + | |
| 2665 | + | |
| 2666 | + | |
| 2667 | + | |
| 2668 | + | |
| 2669 | + | |
| 2670 | + | |
| 2671 | + | |
2643 | 2672 | | |
2644 | 2673 | | |
2645 | 2674 | | |
2646 | 2675 | | |
| 2676 | + | |
| 2677 | + | |
| 2678 | + | |
| 2679 | + | |
2647 | 2680 | | |
2648 | 2681 | | |
2649 | 2682 | | |
| |||
2653 | 2686 | | |
2654 | 2687 | | |
2655 | 2688 | | |
| 2689 | + | |
2656 | 2690 | | |
2657 | 2691 | | |
2658 | 2692 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
922 | 922 | | |
923 | 923 | | |
924 | 924 | | |
| 925 | + | |
925 | 926 | | |
926 | 927 | | |
927 | 928 | | |
| |||
935 | 936 | | |
936 | 937 | | |
937 | 938 | | |
| 939 | + | |
938 | 940 | | |
939 | 941 | | |
940 | 942 | | |
| |||
2825 | 2827 | | |
2826 | 2828 | | |
2827 | 2829 | | |
| 2830 | + | |
2828 | 2831 | | |
2829 | 2832 | | |
2830 | 2833 | | |
| |||
2869 | 2872 | | |
2870 | 2873 | | |
2871 | 2874 | | |
2872 | | - | |
2873 | | - | |
| 2875 | + | |
| 2876 | + | |
| 2877 | + | |
| 2878 | + | |
| 2879 | + | |
| 2880 | + | |
| 2881 | + | |
2874 | 2882 | | |
2875 | 2883 | | |
2876 | 2884 | | |
| |||
2948 | 2956 | | |
2949 | 2957 | | |
2950 | 2958 | | |
| 2959 | + | |
2951 | 2960 | | |
2952 | 2961 | | |
2953 | 2962 | | |
| |||
2977 | 2986 | | |
2978 | 2987 | | |
2979 | 2988 | | |
| 2989 | + | |
| 2990 | + | |
| 2991 | + | |
| 2992 | + | |
| 2993 | + | |
| 2994 | + | |
| 2995 | + | |
| 2996 | + | |
| 2997 | + | |
| 2998 | + | |
| 2999 | + | |
| 3000 | + | |
| 3001 | + | |
| 3002 | + | |
| 3003 | + | |
| 3004 | + | |
2980 | 3005 | | |
2981 | 3006 | | |
2982 | 3007 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
243 | 243 | | |
244 | 244 | | |
245 | 245 | | |
| 246 | + | |
| 247 | + | |
| 248 | + | |
246 | 249 | | |
247 | 250 | | |
248 | 251 | | |
| |||
0 commit comments