S: STRING[6];If not specified, it defaults to 80. Assigments that exceed the allocated size are accepted - they are silently truncated
static bool parseArgs(int argc,char **argv) { ... }Also, it's recommended to follow the convention regarding return codes: (0=ok)
void geb_hook(int where,bool debugmode)The device implementer should include this calling in the loop (and on starting and ending), and the geb_hook function itself. Use gebLoop() and geb_hook(int where,bool debugmode) in common_f.c as templates.