From 487a66394061f2d14a2fa421302966b5442d643f Mon Sep 17 00:00:00 2001 From: JozanLeClerc Date: Mon, 27 Jul 2020 18:55:07 +0200 Subject: I couldn't see shit --- src/ft_e_externs.c | 79 ------------------------------------------------------ 1 file changed, 79 deletions(-) delete mode 100644 src/ft_e_externs.c (limited to 'src/ft_e_externs.c') diff --git a/src/ft_e_externs.c b/src/ft_e_externs.c deleted file mode 100644 index 9302d18..0000000 --- a/src/ft_e_externs.c +++ /dev/null @@ -1,79 +0,0 @@ -/* ************************************************************************** */ -/* */ -/* ::: :::::::: */ -/* ft_e_externs.c :+: :+: :+: */ -/* +:+ +:+ +:+ */ -/* By: rbousset +#+ +:+ +#+ */ -/* +#+#+#+#+#+ +#+ */ -/* Created: 2020/02/14 17:19:27 by rbousset #+# #+# */ -/* Updated: 2020/02/14 17:19:29 by rbousset ### ########lyon.fr */ -/* */ -/* ************************************************************************** */ - -#include -#include -#include -#include -#include - -#include "ft_e_externs_next.h" -#include "ft_m_redirs.h" -#include "ft_s_destroy.h" -#include "ft_s_lcom.h" -#include "ft_s_struct.h" - -static void - ft_e_extern_child(const char *fullpath, - t_lcom *ptr, - t_msh *msh) -{ - ft_dup_redirs(ptr, msh); - execve(fullpath, ptr->argv, msh->envp); - /* TODO: handle execve failed */ -} - -static void - ft_exec_path(const char fullpath[], - t_lcom *ptr, - t_msh *msh) -{ - pid_t pid; - int32_t status; - - if ((pid = fork()) == 0) - { - ft_e_extern_child(fullpath, ptr, msh); - } - else if (pid < 0) - { - /* TODO: handle fork failed */ - } - else - { - while (wait(&status) != pid) - ; - msh->ret = WEXITSTATUS(status); - } -} - -void - ft_e_extern(t_lcom *ptr, - t_msh *msh) -{ - char **envpath; - char *fullpath; - - if (ft_ischarset("/.", ptr->com[0])) - { - ft_exec_path(ptr->com, ptr, msh); - return ; - } - else if ((envpath = ft_get_env_path(msh)) != NULL) - { - fullpath = ft_search_in_path(ptr->com, envpath, msh); - ft_delwords(envpath); - } - /* TODO: deal if not found etc */ - ft_exec_path(fullpath, ptr, msh); - ft_memdel((void*)&fullpath); -} -- cgit v1.2.3