SIGINT

端末から Mosh のシェルモードに SIGINT が送られた場合

  • 親(Mosh)は ignore
  • 子(現在起動中のプログラム:例えば tail -f)はデフォルト動作

としたい。


これを実現するため

  • Mosh は signal(SIGINT, SIG_IGN);
  • 子プロセスは fork 直後に signal(SIGINT, SIG_DFL);

とした。
うまく動いているように見えるが、正しいやり方なのかどうか自信がない。bash のソースを読むが、森で迷い中。