Virtual machine Management Terminal User Interface
リビジョン | 56848d78280211c41cc640b9e85bb259096b8698 (tree) |
---|---|
日時 | 2023-03-21 09:07:37 |
作者 | ![]() |
コミッター | Koine Yuusuke(koinec) |
Initial support for serial console on external terminal window.
@@ -90,6 +90,7 @@ int | ||
90 | 90 | char *pstr_now; |
91 | 91 | char *pstr_next; |
92 | 92 | char *pstr_val; |
93 | + int i_err; | |
93 | 94 | int i_remain; |
94 | 95 | int i_len; |
95 | 96 | int i_argc; |
@@ -197,6 +198,29 @@ int | ||
197 | 198 | |
198 | 199 | } |
199 | 200 | |
201 | + if( HVISOR_OPTION_SUDO & p_hvisor->dw_option ) { | |
202 | + if( HVISOR_OPTION_SUDO_PASSWORD & p_hvisor->dw_option ) { | |
203 | + strncpy( pstr_now, "echo ", i_remain ); | |
204 | + i_remain -= 5; | |
205 | + pstr_now += 5; | |
206 | + | |
207 | + i_len = strnlen( p_hvisor->sudo.str_password, VMTUI_SUDO_MAXLEN_PASSWORD ); | |
208 | + strncpy( pstr_now, p_hvisor->sudo.str_password, i_remain ); | |
209 | + i_remain -= i_len; | |
210 | + pstr_now += i_len; | |
211 | + | |
212 | + strncpy( pstr_now, " | /usr/local/bin/sudo -S -v; ", i_remain ); | |
213 | + i_remain -= 30; | |
214 | + pstr_now += 30; | |
215 | + } | |
216 | + | |
217 | + strncpy( pstr_now, "/usr/local/bin/sudo -s ", i_remain ); | |
218 | + i_remain -= 23; | |
219 | + pstr_now += 23; | |
220 | + | |
221 | + // XXX sudo option | |
222 | + | |
223 | + } | |
200 | 224 | |
201 | 225 | strncpy( pstr_now, "/usr/local/sbin/vm console ", i_remain ); |
202 | 226 | i_remain -= 27; |
@@ -216,6 +240,8 @@ int | ||
216 | 240 | |
217 | 241 | HVisor_Release( p_hvisor ); |
218 | 242 | |
243 | + pstr_argv[i_argc] = NULL; | |
244 | + | |
219 | 245 | ErrInfo_DebugMsg( "================================================" ); |
220 | 246 | |
221 | 247 | { |
@@ -225,6 +251,8 @@ ErrInfo_DebugMsg( "================================================" ); | ||
225 | 251 | } |
226 | 252 | } |
227 | 253 | |
254 | + i_err = LocalExec_ExecBackgroundCommand( pstr_argv ); | |
255 | + | |
228 | 256 | return 0x00; |
229 | 257 | } |
230 | 258 |