ast_comparator/test/student_data/handout/shlab-handout/cases/reference_11_tsh.c
/*
 * sigtstp_handler - The kernel sends a SIGTSTP to the shell whenever
 *     the user types ctrl-z at the keyboard. Catch it and suspend the
 *     foreground job by sending it a SIGTSTP.  
 */
The kernel sends a SIGTSTP to the shell whenever
the user types ctrl-z at the keyboard. Catch it and suspend the
foreground job by sending it a SIGTSTP.
The kernel sends a SIGTSTP to the shell whenever the user types ctrl - z at the keyboard . Catch it and suspend the foreground job by sending it a SIGTSTP .
void 
sigtstp_handler(int sig) 
{
    pid_t pid = fgpid(job_list);
    if(pid != 0){
        if(kill(-pid, SIGTSTP)){
            unix_error("error in handler sigtstp");
        }
    }
    return;
}
void sigtstp_handler ( int sig ) { pid_t pid = fgpid ( job_list ) ; if ( pid != 0 ) { if ( kill ( - pid , SIGTSTP ) ) { unix_error ( " " ) ; } } return ; }
sigtstp_handler - The kernel sends a SIGTSTP to the shell whenever
     the user types ctrl-z at the keyboard.
sigtstp_handler - The kernel sends a SIGTSTP to the shell whenever the user types ctrl - z at the keyboard .