|
Seyshell
|
Gestionnaire des variables d'environnement pour le shell intégré du SGF. More...
#include "env.h"
Functions | |
| env * | init_envs () |
| Initialise le tableau des variables d'environnement par défaut. | |
| env * | get_instance () |
| Récupère l'instance unique (Singleton) du tableau des variables d'environnement. | |
| int | get_env_len (env *envs) |
| Calcule le nombre de variables d'environnement actives dans le tableau. | |
| char * | get_env_value (char *key) |
| Recherche et retourne la valeur d'une variable d'environnement d'après sa clé. | |
| int | set_env_value (char *key, char *value) |
| Modifie la valeur d'une variable d'environnement existante. | |
Gestionnaire des variables d'environnement pour le shell intégré du SGF.
Ce fichier implémente un registre de type dictionnaire (Clé / Valeur) sous forme de Singleton pour suivre l'état du shell (répertoire courant PWD, utilisateur, etc.).
| int get_env_len | ( | env * | envs | ) |
Calcule le nombre de variables d'environnement actives dans le tableau.
Parcourt le tableau de structures jusqu'à rencontrer la sentinelle (clé égale à NULL).
| envs | Pointeur vers le tableau de variables d'environnement. |
| char * get_env_value | ( | char * | key | ) |
Recherche et retourne la valeur d'une variable d'environnement d'après sa clé.
| key | Le nom de la variable recherchée (ex: "PWD"). |
| env * get_instance | ( | ) |
Récupère l'instance unique (Singleton) du tableau des variables d'environnement.
Si le tableau n'a pas encore été créé, cette fonction appelle init_envs(). Les appels suivants renverront directement la même zone mémoire.
| env * init_envs | ( | ) |
Initialise le tableau des variables d'environnement par défaut.
Alloue l'espace mémoire pour les variables de base ("PWD", "USER", "HOST") et ajoute une sentinelle NULL à la fin pour permettre un parcours sûr.
| int set_env_value | ( | char * | key, |
| char * | value | ||
| ) |
Modifie la valeur d'une variable d'environnement existante.
strdup. | key | Le nom de la variable à modifier. |
| value | La nouvelle chaîne de caractères à affecter. |