random things...
This commit is contained in:
@@ -8,7 +8,7 @@ typedef struct {
|
||||
|
||||
int valid;
|
||||
|
||||
|
||||
char *input_device;
|
||||
|
||||
|
||||
} Configuration;
|
||||
|
||||
@@ -1,10 +1,9 @@
|
||||
|
||||
#
|
||||
# experimental config file
|
||||
#
|
||||
|
||||
|
||||
input_device s /def/ttyACM0
|
||||
|
||||
|
||||
input_device s /dev/ttyACM0
|
||||
input_speed s 9600
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -10,13 +10,14 @@
|
||||
extern int verbosity;
|
||||
extern Configuration config;
|
||||
|
||||
#define CMP(a) (!strcmp(cptr, a))
|
||||
#define CMP(a) (!strcmp(keyptr, a))
|
||||
|
||||
/* ---------------------------------------------------------------- */
|
||||
int parse_config(char *fname, int flags)
|
||||
{
|
||||
FILE *fp;
|
||||
char line[SZ_STRINGS+1], *cptr;
|
||||
char line[SZ_STRINGS+1],
|
||||
*keyptr, *typeptr, *cptr;
|
||||
int numligne;
|
||||
|
||||
#if DEBUG_LEVEL
|
||||
@@ -49,23 +50,35 @@ while (fgets(line, SZ_STRINGS, fp))
|
||||
}
|
||||
|
||||
/* seek for the first token in this line */
|
||||
if (NULL==(cptr = strtok(line, " \t"))) {
|
||||
if (NULL==(keyptr = strtok(line, " \t"))) {
|
||||
/* Got an empty line */
|
||||
continue;
|
||||
}
|
||||
|
||||
/* skip comments */
|
||||
if ('#'==*cptr) continue;
|
||||
|
||||
if(verbosity) fprintf(stderr, "[%s]\n", cptr);
|
||||
if ('#'==*keyptr) continue;
|
||||
/* seek for the type field */
|
||||
if (NULL==(typeptr = strtok(NULL, " \t"))) {
|
||||
/* we can(t get a type flag ? wtf ? */
|
||||
fprintf(stderr, "ERROR line %d : no type\n", numligne);
|
||||
continue;
|
||||
}
|
||||
|
||||
if(verbosity)
|
||||
fprintf(stderr, "[%s] type %s\n", keyptr, typeptr);
|
||||
|
||||
if CMP("abort") {
|
||||
fprintf(stderr, "abort in config file\n");
|
||||
}
|
||||
|
||||
if (CMP("input_device")) {
|
||||
config.input_device = strdup(strtok(NULL, " \t"));
|
||||
continue;
|
||||
}
|
||||
}
|
||||
|
||||
fclose(fp);
|
||||
|
||||
return -1;
|
||||
return 0;
|
||||
}
|
||||
/* ---------------------------------------------------------------- */
|
||||
int show_config(char *title)
|
||||
@@ -75,7 +88,8 @@ if (verbosity) {
|
||||
printf("********** %s **********\n", title);
|
||||
}
|
||||
|
||||
printf("valid %d\n", config.valid);
|
||||
printf("valid : %d\n", config.valid);
|
||||
printf("input device : %s\n", config.input_device);
|
||||
|
||||
puts("");
|
||||
return 0;
|
||||
|
||||
Reference in New Issue
Block a user