Crinit -- Configurable Rootfs Init
Loading...
Searching...
No Matches
confmap.c File Reference

(/usr/bin/git 2025-11-21, commit: 5ce271d1)

Implementation file related to mapping configuration options and their string representations. More...

#include "confmap.h"
#include <stdlib.h>
#include "common.h"
#include "logio.h"
Include dependency graph for confmap.c:

Functions

static int crinitCompareConfigMappings (const void *a, const void *b)
 
const crinitConfigMapping_tcrinitFindConfigMapping (const crinitConfigMapping_t *map, size_t mapSize, const char *keyStr)
 

Variables

const crinitConfigMapping_t crinitTaskCfgMap []
 
const size_t crinitTaskCfgMapSize = crinitNumElements(crinitTaskCfgMap)
 
const crinitConfigMapping_t crinitSeriesCfgMap []
 
const size_t crinitSeriesCfgMapSize = crinitNumElements(crinitSeriesCfgMap)
 
const crinitConfigMapping_t crinitKCmdlineCfgMap []
 
const size_t crinitKCmdlineCfgMapSize = crinitNumElements(crinitKCmdlineCfgMap)
 

Detailed Description

Implementation file related to mapping configuration options and their string representations.

Function Documentation

◆ crinitCompareConfigMappings()

static int crinitCompareConfigMappings ( const void *  a,
const void *  b 
)
static

Comparison function between two crinitConfigMapping_t, for bsearch()

◆ crinitFindConfigMapping()

const crinitConfigMapping_t * crinitFindConfigMapping ( const crinitConfigMapping_t map,
size_t  mapSize,
const char *  keyStr 
)

Searches for an entry in an array of crinitConfigMapping_t by crinitConfigMapping_t::configKey.

Uses bsearch() with the assumption that the array is lexicographically ordered by crinitConfigMapping_t::configKey.

Parameters
mapThe array of crinitConfigMapping_t to search in.
mapSizeThe number of elements in the array to search.
keyStrThe name of the mapping to search for.

Variable Documentation

◆ crinitKCmdlineCfgMap

const crinitConfigMapping_t crinitKCmdlineCfgMap[]
Initial value:
= {
}
int crinitCfgSigKeyDirHandler(void *tgt, const char *val, crinitConfigType_t type)
Definition confhdl.c:1333
int crinitCfgSignaturesHandler(void *tgt, const char *val, crinitConfigType_t type)
Definition confhdl.c:1345
#define CRINIT_CONFIG_KEYSTR_SIGKEYDIR
Definition confparse.h:50
@ CRINIT_CONFIG_SIGNATURES
Definition confparse.h:175
@ CRINIT_CONFIG_SIGKEYDIR
Definition confparse.h:174
#define CRINIT_CONFIG_KEYSTR_SIGNATURES
Definition confparse.h:52

Constant (at compile-time) array of mappings between Kernel cmdline configuration names and their indices and properties.

Must be lexicographically ordered (by crinitConfigMapping_t::configKey), so that crinitFindConfigMapping() works. This is tested by a unit/regression test.

◆ crinitKCmdlineCfgMapSize

const size_t crinitKCmdlineCfgMapSize = crinitNumElements(crinitKCmdlineCfgMap)

Size of crinitKCmdlineCfgMap, known at compile-time.

◆ crinitSeriesCfgMap

const crinitConfigMapping_t crinitSeriesCfgMap[]

Constant (at compile-time) array of mappings between series/global configuration names and their indices and properties.

Must be lexicographically ordered (by crinitConfigMapping_t::configKey), so that crinitFindConfigMapping() works. This is tested by a unit/regression test.

◆ crinitSeriesCfgMapSize

const size_t crinitSeriesCfgMapSize = crinitNumElements(crinitSeriesCfgMap)

Size of crinitSeriesCfgMap, known at compile-time.

◆ crinitTaskCfgMap

const crinitConfigMapping_t crinitTaskCfgMap[]
Initial value:
= {
int crinitCfgFilterHandler(void *tgt, const char *val, crinitConfigType_t type)
Definition confhdl.c:429
int crinitCfgRespHandler(void *tgt, const char *val, crinitConfigType_t type)
Definition confhdl.c:505
int crinitCfgNameHandler(void *tgt, const char *val, crinitConfigType_t type)
Definition confhdl.c:493
int crinitCfgUserHandler(void *tgt, const char *val, crinitConfigType_t type)
Definition confhdl.c:556
int crinitCfgGroupHandler(void *tgt, const char *val, crinitConfigType_t type)
Definition confhdl.c:595
int crinitCfgTrigRearmHandler(void *tgt, const char *val, crinitConfigType_t type)
Definition confhdl.c:319
int crinitCfgDepHandler(void *tgt, const char *val, crinitConfigType_t type)
Definition confhdl.c:303
int crinitCfgEnvHandler(void *tgt, const char *val, crinitConfigType_t type)
Definition confhdl.c:398
int crinitCfgStopCmdHandler(void *tgt, const char *val, crinitConfigType_t type)
Definition confhdl.c:217
int crinitCfgIoRedirHandler(void *tgt, const char *val, crinitConfigType_t type)
Definition confhdl.c:469
int crinitCfgRespRetHandler(void *tgt, const char *val, crinitConfigType_t type)
Definition confhdl.c:516
int crinitTaskIncludeHandler(void *tgt, const char *val, crinitConfigType_t type)
Definition confhdl.c:527
int crinitCfgPrvHandler(void *tgt, const char *val, crinitConfigType_t type)
Definition confhdl.c:331
int crinitCfgCmdHandler(void *tgt, const char *val, crinitConfigType_t type)
Definition confhdl.c:150
int crinitCfgTrigHandler(void *tgt, const char *val, crinitConfigType_t type)
Definition confhdl.c:311
#define CRINIT_CONFIG_KEYSTR_COMMAND
Definition confparse.h:55
#define CRINIT_CONFIG_KEYSTR_NAME
Definition confparse.h:77
#define CRINIT_CONFIG_KEYSTR_IOREDIR
Definition confparse.h:75
#define CRINIT_CONFIG_KEYSTR_TRIGGER
Definition confparse.h:65
@ CRINIT_CONFIG_INCLUDE
Definition confparse.h:165
@ CRINIT_CONFIG_USER
Definition confparse.h:185
@ CRINIT_CONFIG_COMMAND
Definition confparse.h:153
@ CRINIT_CONFIG_TRIGGER_REARM
Definition confparse.h:182
@ CRINIT_CONFIG_TRIGGER
Definition confparse.h:181
@ CRINIT_CONFIG_NAME
Definition confparse.h:169
@ CRINIT_CONFIG_FILTER_DEFINE
Definition confparse.h:163
@ CRINIT_CONFIG_RESPAWN
Definition confparse.h:171
@ CRINIT_CONFIG_PROVIDES
Definition confparse.h:170
@ CRINIT_CONFIG_DEPENDS
Definition confparse.h:158
@ CRINIT_CONFIG_RESPAWN_RETRIES
Definition confparse.h:172
@ CRINIT_CONFIG_GROUP
Definition confparse.h:164
@ CRINIT_CONFIG_STOP_COMMAND
Definition confparse.h:176
@ CRINIT_CONFIG_IOREDIR
Definition confparse.h:168
@ CRINIT_CONFIG_ENV_SET
Definition confparse.h:162
#define CRINIT_CONFIG_KEYSTR_GROUP
Definition confparse.h:89
#define CRINIT_CONFIG_KEYSTR_INCLUDE
Definition confparse.h:73
#define CRINIT_CONFIG_KEYSTR_ENV_SET
Definition confparse.h:69
#define CRINIT_CONFIG_KEYSTR_STOP_COMMAND
Definition confparse.h:85
#define CRINIT_CONFIG_KEYSTR_TRIGGER_REARM
Definition confparse.h:67
#define CRINIT_CONFIG_KEYSTR_DEPENDS
Definition confparse.h:63
#define CRINIT_CONFIG_KEYSTR_RESPAWN
Definition confparse.h:81
#define CRINIT_CONFIG_KEYSTR_PROVIDES
Definition confparse.h:79
#define CRINIT_CONFIG_KEYSTR_FILTER_DEFINE
Definition confparse.h:71
#define CRINIT_CONFIG_KEYSTR_USER
Definition confparse.h:87
#define CRINIT_CONFIG_KEYSTR_RESPAWN_RETRIES
Definition confparse.h:83

Constant (at compile-time) array of mappings between task-specific configuration names and their indices and properties.

Must be lexicographically ordered (by crinitConfigMapping_t::configKey), so that crinitFindConfigMapping() works. This is tested by a unit/regression test.

◆ crinitTaskCfgMapSize

const size_t crinitTaskCfgMapSize = crinitNumElements(crinitTaskCfgMap)

Size of crinitTaskCfgMap, known at compile-time.