diff --git a/src/env_cmd.c b/src/env_cmd.c new file mode 100644 index 0000000..f3df81f --- /dev/null +++ b/src/env_cmd.c @@ -0,0 +1,71 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* env_cmd.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: mmoussou name) + + ft_strlen(env->content) + 2); + if (!exec_env[i]) + { + ft_free("a", exec_env); + return (NULL); + } + ft_strlcpy(exec_env[i], env->name, ft_strlen(env->name)); + exec_env[i][ft_strlen(env->name)] = '='; + ft_strlcpy(exec_env[i] + ft_strlen(env->name) + 1, + env->content, ft_strlen(env->content)) + env = env->next; + i++; + } + return (exec_env); +} + +char set_env(char **env, const char *name, char *content) +{ + char *new_env; + int i; + int j; + + if (!name || !name[0]) + return (0); + for (int pog = 0; env[pog]; pog++) + printf("%s\n", env[pog]); + new_env = malloc(sizeof(char) * (ft_strlen(name) + ft_strlen(content) + 2)); + if (!new_env) + return (-1); + i = 0; + while (name[i]) + { + new_env[i] = name[i]; + i++; + } + new_env[i++] = '='; + j = 0; + while (content[j]) + { + new_env[i + j] = content[j]; + j++; + } + printf("\n%s\n\n", new_env); + return (0); +}