ast_comparator/test/student_data/handout/shlab-handout/cases/reference_32_tsh.c
/* 
* sigint_handler - The kernel sends a SIGINT to the shell whenver the
*    user types ctrl-c at the keyboard.  Catch it and send it along
*    to the foreground job.  
*/
The kernel sends a SIGINT to the shell whenver the
user types ctrl-c at the keyboard.  Catch it and send it along
to the foreground job.
The kernel sends a SIGINT to the shell whenver the user types ctrl - c at the keyboard . Catch it and send it along to the foreground job .
void sigint_handler(int sig) {
pid_t pid = fgpid(jobs);
int jid = pid2jid(pid);
if (pid != 0) {
printf("Job %d terminated by signal: Interrupt", jid);
deletejob(jobs, pid);
send_signal(-pid, sig);
}
return;
}
void sigint_handler ( int sig ) { pid_t pid = fgpid ( jobs ) ; int jid = pid2jid ( pid ) ; if ( pid != 0 ) { printf ( " " , jid ) ; deletejob ( jobs , pid ) ; send_signal ( - pid , sig ) ; } return ; }
sigint_handler - The kernel sends a SIGINT to the shell whenver the
user types ctrl-c at the keyboard.
sigint_handler - The kernel sends a SIGINT to the shell whenver the user types ctrl - c at the keyboard .
//get fgid