Elektra  0.8.18
Functions | Variables
getenv.cpp File Reference

Source for the getenv library. More...

#include <kdbconfig.h>
#include <kdbgetenv.h>
#include <kdbcontext.hpp>
#include <kdbhelper.h>
#include <dlfcn.h>
#include <libgen.h>
#include <signal.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <sys/types.h>
#include <unistd.h>
#include <chrono>
#include <iostream>
#include <sstream>
#include <string>
#include "readme_elektrify-getenv.c"
Include dependency graph for getenv.cpp:

Functions

void ckdb::elektraLockMutex ()
 Lock the internally used mutex to access elektraRepo, elektraConfig or elektraParentKey. More...
 
void ckdb::elektraUnlockMutex ()
 Unlock the internally used mutex. More...
 
void ckdb::elektraOpen (int *argc, char **argv)
 Initializes Global Elektra Repo+Config. More...
 
void ckdb::elektraClose ()
 Closes and frees Repo+Config. More...
 
char * ckdb::elektraGetEnv (const char *cname, gfcn origGetenv)
 Uses Elektra to get from environment. More...
 
char * ckdb::elektraBootstrapGetEnv (const char *name)
 Search in environ, should be identical to getenv. More...
 

Variables

Key * ckdb::elektraParentKey
 The parentKey used to access elektraRepo. More...
 
KeySet * ckdb::elektraConfig
 The config of the application. More...
 
KDB * ckdb::elektraRepo
 The KDB repository to be used to fetch configuration.
 

Detailed Description

Source for the getenv library.

Note
there are two necessary bootstrap phases:

1.) bootstrapping in pre-main phase when no allocation is possible 2.) bootstrapping when elektra modules use getenv()