Lines Matching +defs:var +defs:list

13  * this list of conditions and the following disclaimer.
16 * this list of conditions and the following disclaimer in the documentation
459 #define S_NUMBER_OR_ZERO(str, var) if(strcmp(opt, str) == 0) \
460 { IS_NUMBER_OR_ZERO; cfg->var = atoi(val); }
462 #define S_NUMBER_NONZERO(str, var) if(strcmp(opt, str) == 0) \
463 { IS_NONZERO_NUMBER; cfg->var = atoi(val); }
465 #define S_UNSIGNED_OR_ZERO(str, var) if(strcmp(opt, str) == 0) \
466 { IS_NUMBER_OR_ZERO; cfg->var = (unsigned)atoi(val); }
468 #define S_SIZET_OR_ZERO(str, var) if(strcmp(opt, str) == 0) \
469 { IS_NUMBER_OR_ZERO; cfg->var = (size_t)atoi(val); }
471 #define S_SIZET_NONZERO(str, var) if(strcmp(opt, str) == 0) \
472 { IS_NONZERO_NUMBER; cfg->var = (size_t)atoi(val); }
474 #define S_YNO(str, var) if(strcmp(opt, str) == 0) \
475 { IS_YES_OR_NO; cfg->var = (strcmp(val, "yes") == 0); }
477 #define S_MEMSIZE(str, var) if(strcmp(opt, str)==0) \
478 { return cfg_parse_memsize(val, &cfg->var); }
480 #define S_POW2(str, var) if(strcmp(opt, str)==0) \
481 { IS_POW2_NUMBER; cfg->var = (size_t)atoi(val); }
483 #define S_STR(str, var) if(strcmp(opt, str)==0) \
484 { free(cfg->var); return (cfg->var = strdup(val)) != NULL; }
486 #define S_STRLIST(str, var) if(strcmp(opt, str)==0) \
487 { return cfg_strlist_insert(&cfg->var, strdup(val)); }
489 #define S_STRLIST_UNIQ(str, var) if(strcmp(opt, str)==0) \
490 { if(cfg_strlist_find(cfg->var, val)) { return 0;} \
491 return cfg_strlist_insert(&cfg->var, strdup(val)); }
493 #define S_STRLIST_APPEND(str, var) if(strcmp(opt, str)==0) \
494 { return cfg_strlist_append(&cfg->var, strdup(val)); }
897 /** list of result items */
898 struct config_strlist_head list;
908 if(!cfg_strlist_append(&m->list, strdup(line)))
913 struct config_strlist** list)
917 *list = NULL;
921 config_delstrlist(m.list.first);
924 *list = m.list.first;
931 struct config_strlist* list = NULL;
934 if((r = config_get_option_list(cfg, opt, &list)) != 0)
936 *str = config_collate_cat(list);
937 config_delstrlist(list);
943 config_collate_cat(struct config_strlist* list)
948 if(!list) /* no elements */
950 if(list->next == NULL) /* one element , no newline at end. */
951 return strdup(list->str);
953 for(s=list; s; s=s->next)
960 for(s=list; s; s=s->next) {
975 #define O_DEC(opt, str, var) if(strcmp(opt, str)==0) \
976 {snprintf(buf, len, "%d", (int)cfg->var); \
979 #define O_UNS(opt, str, var) if(strcmp(opt, str)==0) \
980 {snprintf(buf, len, "%u", (unsigned)cfg->var); \
983 #define O_YNO(opt, str, var) if(strcmp(opt, str)==0) \
984 {func(cfg->var?"yes":"no", arg);}
986 #define O_STR(opt, str, var) if(strcmp(opt, str)==0) \
987 {func(cfg->var?cfg->var:"", arg);}
992 #define O_MEM(opt, str, var) if(strcmp(opt, str)==0) { \
993 if(cfg->var > 1024*1024*1024) { \
994 size_t f=cfg->var/(size_t)1000000, b=cfg->var%(size_t)1000000; \
996 } else snprintf(buf, len, "%u", (unsigned)cfg->var); \
998 /** compare and print list option */
1004 /** compare and print list option */
1012 /** compare and print list option */
1364 * outgoing-permit, outgoing-avoid - have list of ports
1965 int cfg_strlist_append(struct config_strlist_head* list, char* item)
1968 if(!item || !list) {
1979 if(list->last)
1980 list->last->next = s;
1982 list->first = s;
1983 list->last = s;