die
signal(SIGINT, die);
signal(SIGTERM, die);
signal(SIGHUP, die);
die("posix_openpt error: %s\n", strerror(errno));
die("grantpt error: %s\n", strerror(errno));
die("unlockpt error: %s\n", strerror(errno));
die("fork error: %s\n", strerror(errno));
die("setsid() error: %s\n", strerror(errno));
die("ptsname error: %s\n", strerror(errno));
die("open of slave failed: %a\n", strerror(errno));
die("error doing dup's : %s\n", strerror(errno));
die("execve error: %s\n", strerror(errno));
die("dup2 of parent failed");