Som kind of shell - act

This commit is contained in:
2022-08-24 16:24:57 +02:00
parent 86956ff1ce
commit 57890907ae
7 changed files with 69 additions and 200 deletions

View File

@ -495,6 +495,21 @@ int cw_cfg_load(const char *filename, cw_Cfg_t * cfg)
return errno;
}
int cw_cfg_read_from_string(const char *str, cw_Cfg_t *cfg)
{
int errs;
FILE * f = fmemopen((void*)str,strlen(str),"rb");
if(!f)
return errno;
errs = cw_cfg_read_from_file(f, cfg);
fclose(f);
if (errs)
errno = EINVAL;
return errno;
}
int cw_cfg_write_to_file(FILE *f, cw_Cfg_t * cfg)
{
mavliter_t it;

View File

@ -57,6 +57,7 @@ int cw_cfg_save(const char *filename, cw_Cfg_t *cfg, const char *format, ...);
uint16_t cw_cfg_get_word_l(cw_Cfg_t ** cfg, char *key, uint16_t def);
void cw_cfg_fdump(FILE *f, cw_Cfg_t * cfg);
int cw_cfg_read_from_string(const char *str, cw_Cfg_t *cfg);

View File

@ -101,9 +101,10 @@ int cw_compose_message(struct cw_Conn *conn, uint8_t * rawout)
params.conn=conn;
params.rawmsg = rawout;
params.cfg_list[0]=conn->update_cfg;
params.cfg_list[1]=conn->local_cfg;
params.cfg_list[2]=conn->global_cfg;
params.cfg_list[3]=NULL;
params.cfg_list[1]=conn->remote_cfg;
params.cfg_list[2]=conn->local_cfg;
params.cfg_list[3]=conn->global_cfg;
params.cfg_list[4]=NULL;
params.msgset=conn->msgset;
params.msgdata=msg;
params.debug_details=details;