]> Kevux Git Server - fll/commit
Update: Improve terminal support in execute functions.
authorKevin Day <thekevinday@gmail.com>
Sat, 23 Oct 2021 16:10:30 +0000 (11:10 -0500)
committerKevin Day <thekevinday@gmail.com>
Sat, 23 Oct 2021 16:44:38 +0000 (11:44 -0500)
commit7abfbdde4f169137340536098b99eec9cc76acfe
tree52f70a09d85e0b7092327363d92cab87b89e08a3
parent79f7df567828fce348a36a84cec4a7afefeaf21c
Update: Improve terminal support in execute functions.

The init program calling bash results in "not a tty" error:
- "bash: cannot set terminal process group (-1): Not a tty"
- "bash: no job control in this shell"

This exposed me to the Process Group.
I have learned that I may need to set the Controlling Terminal in this case.

To that end, I have introduced FL_execute_parameter_option_session_d for setting this up.
I have also added an initial setup for FL_execute_parameter_option_terminal_d, but more investigation and research needs to be done.

I've added some basic execute terminal codes that I may or may not need.
I would rather have them now and remove them now rather than not have them and have to add them later.

The controller program needs to utilize this, at least when running as "init".
However, I believe that I should pass control over this to the user as new settings, such as "session new" and "session same".

Provide example to utilize "setsid" program for doing this same thing when directly calling bash.
12 files changed:
level_0/f_execute/c/execute-common.h
level_0/f_execute/c/execute.c
level_0/f_execute/c/execute.h
level_1/fl_execute/c/execute-common.h
level_2/fll_execute/c/execute.c
level_2/fll_execute/c/execute.h
level_2/fll_execute/c/private-execute.c
level_3/controller/c/private-controller.c
level_3/controller/c/private-rule.c
level_3/controller/data/settings/entries/default.entry
level_3/controller/data/settings/entries/maintenance.entry
level_3/controller/data/settings/rules/maintenance/console.rule