32 env = (
t_env *)content;
50 content = ft_calloc(1,
sizeof(
t_env));
53 content->
key = ft_strdup(key);
60 content->
value = NULL;
63 content->
value = ft_strdup(value);
84 node = ft_lstnew(content);
90 ft_lstadd_back(env_list, node);
109 level = ft_atoi(env->
value) + 1;
112 new_level = ft_itoa(level);
116 env->
value = new_level;
127 pwd = getcwd(NULL, 0);
150 if (!shell->
envp || !shell->
envp[0])
int init_default_env(t_shell *shell)
Varsayılan ortam değişkenlerini oluşturur (envp boşsa).
int append_env_node(t_list **env_list, char *key, char *value)
Ortam değişkeni node'u listeye ekler.
int init_env_list(t_shell *shell)
Ortam değişkenleri listesini başlatır.
void free_env_node(void *content)
Ortam değişkeni node'unu serbest bırakır.
t_env * create_env_content(char *key, char *value)
Ortam değişkeni içeriği oluşturur.
static void update_shlvl(t_shell *shell)
SHLVL değişkenini günceller (iç içe shell için).
int parse_env_variables(t_shell *shell)
Tüm ortam değişkenlerini (envp) ayrıştırarak listeye ekler.
t_env * find_env_by_key(t_list *env_list, char *key)
Env listesinde key'e göre arama yapar.
Minishell ana header dosyası
struct s_env t_env
-----> EXPANDER <--—