intra to gitea

This commit is contained in:
root
2025-11-15 22:28:42 +00:00
commit 03b080ed92
98 changed files with 5522 additions and 0 deletions
+64
View File
@@ -0,0 +1,64 @@
/* ************************************************************************** */
/* */
/* ::: :::::::: */
/* signals.c :+: :+: :+: */
/* +:+ +:+ +:+ */
/* By: tordner <[email protected]> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2025/01/27 00:00:00 by lfirmin #+# #+# */
/* Updated: 2025/06/02 01:05:49 by tordner ### ########.fr */
/* */
/* ************************************************************************** */
#include "../../includes/minishell.h"
int g_signal = 0;
void if_sigint(int sig)
{
g_signal = 128 + sig;
rl_done = 1;
}
void set_status_if_signal(t_shell *shell)
{
shell->exit_status = g_signal;
g_signal = 0;
}
void set_signal_child(void)
{
rl_event_hook = sig_event;
signal(SIGQUIT, SIG_DFL);
signal(SIGINT, SIG_DFL);
signal(SIGTSTP, SIG_IGN);
}
void set_signal_parent_exec(void)
{
struct sigaction sa;
struct sigaction sb;
rl_event_hook = sig_event;
ft_memset(&sa, 0, sizeof(sa));
sa.sa_handler = handle_signal_parent;
sa.sa_flags = SA_RESTART;
sigaction(SIGINT, &sa, NULL);
ft_memset(&sb, 0, sizeof(sb));
sb.sa_handler = handle_signal_parent;
sb.sa_flags = SA_RESTART;
sigaction(SIGQUIT, &sb, NULL);
}
void set_signal_parent(void)
{
struct sigaction sa;
rl_event_hook = sig_event;
ft_memset(&sa, 0, sizeof(sa));
sa.sa_handler = if_sigint;
sa.sa_flags = SA_RESTART;
sigaction(SIGINT, &sa, NULL);
signal(SIGQUIT, SIG_IGN);
signal(SIGTSTP, SIG_IGN);
}