-/* protos for config type handles: convert value to string */
-static void bool_to_string (char* dst, size_t dstlen, struct option_t* option);
-static void num_to_string (char* dst, size_t dstlen, struct option_t* option);
-static void str_to_string (char* dst, size_t dstlen, struct option_t* option);
-static void quad_to_string (char* dst, size_t dstlen, struct option_t* option);
-static void sort_to_string (char* dst, size_t dstlen, struct option_t* option);
-static void rx_to_string (char* dst, size_t dstlen, struct option_t* option);
-static void magic_to_string (char* dst, size_t dstlen, struct option_t* option);
-static void addr_to_string (char* dst, size_t dstlen, struct option_t* option);
-static void user_to_string (char* dst, size_t dstlen, struct option_t* option);
-
-/* protos for config type handles: convert to value from string */
-static int bool_from_string (struct option_t* dst, const char* val,
- char* errbuf, size_t errlen);
-static int num_from_string (struct option_t* dst, const char* val,
- char* errbuf, size_t errlen);
-static int str_from_string (struct option_t* dst, const char* val,
- char* errbuf, size_t errlen);
-static int path_from_string (struct option_t* dst, const char* val,
- char* errbuf, size_t errlen);
-static int quad_from_string (struct option_t* dst, const char* val,
- char* errbuf, size_t errlen);
-static int sort_from_string (struct option_t* dst, const char* val,
- char* errbuf, size_t errlen);
-static int rx_from_string (struct option_t* dst, const char* val,
- char* errbuf, size_t errlen);
-static int magic_from_string (struct option_t* dst, const char* val,
- char* errbuf, size_t errlen);
-static int addr_from_string (struct option_t* dst, const char* val,
- char* errbuf, size_t errlen);
-static int user_from_string (struct option_t* dst, const char* val,
- char* errbuf, size_t errlen);
-
-static struct {
- unsigned short type;
- void (*opt_to_string) (char* dst, size_t dstlen, struct option_t* option);
- int (*opt_from_string) (struct option_t* dst, const char* val,
- char* errbuf, size_t errlen);
-} FuncTable[] = {
- { 0, NULL, NULL }, /* there's no DT_ type with 0 */
- { DT_BOOL, bool_to_string, bool_from_string },
- { DT_NUM, num_to_string, num_from_string },
- { DT_STR, str_to_string, str_from_string },
- { DT_PATH, str_to_string, path_from_string },
- { DT_QUAD, quad_to_string, quad_from_string },
- { DT_SORT, sort_to_string, sort_from_string },
- { DT_RX, rx_to_string, rx_from_string },
- { DT_MAGIC, magic_to_string, magic_from_string },
- /* synonyms should be resolved already so we don't need this
- * but must define it as DT_ is used for indexing */
- { DT_SYN, NULL, NULL },
- { DT_ADDR, addr_to_string, addr_from_string },
- { DT_USER, user_to_string, user_from_string },
-};
-
-static void bool_to_string (char* dst, size_t dstlen,