Minishell 1.0
42 School Minishell Project - A simple shell implementation
Yüklüyor...
Arıyor...
Eşleşme Yok
env_initialization.c Dosya Referansı

Ortam değişkenleri başlatma ve yönetimi. Ayrıntılar...

#include "../../include/minishell.h"
#include <stdlib.h>
#include <unistd.h>
env_initialization.c için içerme bağımlılık grafiği:

Bu dosyanın kaynak koduna git.

Fonksiyonlar

void free_env_node (void *content)
 Ortam değişkeni node'unu serbest bırakır.
t_envcreate_env_content (char *key, char *value)
 Ortam değişkeni içeriği oluşturur.
int append_env_node (t_list **env_list, char *key, char *value)
 Ortam değişkeni node'u listeye ekler.
static void update_shlvl (t_shell *shell)
 SHLVL değişkenini günceller (iç içe shell için).
int init_default_env (t_shell *shell)
 Varsayılan ortam değişkenlerini oluşturur (envp boşsa).
int init_env_list (t_shell *shell)
 Ortam değişkenleri listesini başlatır.

Ayrıntılı tanımlama

Ortam değişkenleri başlatma ve yönetimi.

env_initialization.c dosyasında tanımlanmıştır.

Fonksiyon Dokümantasyonu

◆ free_env_node()

void free_env_node ( void * content)

Ortam değişkeni node'unu serbest bırakır.

Parametreler
contentt_env yapısı (void* olarak)

env_initialization.c dosyasının 26 numaralı satırında tanımlanmıştır.

Referanslar s_env::key ve s_env::value.

Referans veren append_env_node(), check_var_extraction(), cleanup_shell(), create_env_content(), extract_variable_info(), init_env_list(), parse_env_variables(), process_variable_replacement() ve remove_env_node().

Bu fonksiyon için çağırılma şeması:

◆ create_env_content()

t_env * create_env_content ( char * key,
char * value )

Ortam değişkeni içeriği oluşturur.

Parametreler
keyDeğişken adı
valueDeğişken değeri
Döndürdüğü değer
t_env* Yeni oluşturulan yapı veya NULL

env_initialization.c dosyasının 46 numaralı satırında tanımlanmıştır.

Referanslar free_env_node(), s_env::key ve s_env::value.

Referans veren append_env_node().

Bu fonksiyon için çağırılma şeması:
Bu fonksiyon için çağırılma şeması:

◆ append_env_node()

int append_env_node ( t_list ** env_list,
char * key,
char * value )

Ortam değişkeni node'u listeye ekler.

env_initialization.c dosyasının 76 numaralı satırında tanımlanmıştır.

Referanslar create_env_content() ve free_env_node().

Referans veren init_default_env(), parse_env_line() ve update_or_add_env().

Bu fonksiyon için çağırılma şeması:
Bu fonksiyon için çağırılma şeması:

◆ update_shlvl()

void update_shlvl ( t_shell * shell)
static

SHLVL değişkenini günceller (iç içe shell için).

Parametreler
shellShell yapısı

env_initialization.c dosyasının 98 numaralı satırında tanımlanmıştır.

Referanslar s_shell::env_list, find_env_by_key() ve s_env::value.

Referans veren init_env_list().

Bu fonksiyon için çağırılma şeması:
Bu fonksiyon için çağırılma şeması:

◆ init_default_env()

int init_default_env ( t_shell * shell)

Varsayılan ortam değişkenlerini oluşturur (envp boşsa).

env_initialization.c dosyasının 123 numaralı satırında tanımlanmıştır.

Referanslar append_env_node() ve s_shell::env_list.

Referans veren init_env_list().

Bu fonksiyon için çağırılma şeması:
Bu fonksiyon için çağırılma şeması:

◆ init_env_list()

int init_env_list ( t_shell * shell)

Ortam değişkenleri listesini başlatır.

Parametreler
shellShell yapısı
Döndürdüğü değer
int Başarı: 0, Hata: -1

env_initialization.c dosyasının 148 numaralı satırında tanımlanmıştır.

Referanslar s_shell::env_list, s_shell::envp, free_env_node(), init_default_env(), parse_env_variables() ve update_shlvl().

Referans veren init_shell().

Bu fonksiyon için çağırılma şeması:
Bu fonksiyon için çağırılma şeması: