#define _PARSER_H_
#define HISTORY 100 /* Don't let history grow unbounded */
-#define MAXARGS 100
+#define MAXARGS 512
+
+#define CMD_COMPLETE 0
+#define CMD_INCOMPLETE 1
+#define CMD_NONE 2
+#define CMD_AMBIG 3
+#define CMD_HELP 4
typedef struct parser_cmd {
char *pc_name;
int Parser_commands(void); /* Start the command parser */
void Parser_qhelp(int, char **); /* Quick help routine */
int Parser_help(int, char **); /* Detailed help routine */
+void Parser_ignore_errors(int ignore); /* Set the ignore errors flag */
void Parser_printhelp(char *); /* Detailed help routine */
void Parser_exit(int, char **); /* Shuts down command parser */
int Parser_execarg(int argc, char **argv, command_t cmds[]);
/* Extracts an integer from a string with a base */
int Parser_arg2int(const char *inp, long *result, int base);
+/* Convert human readable size string to and int; "1k" -> 1000 */
+int Parser_size(int *sizep, char *str);
+
+/* Convert a string boolean to an int; "enable" -> 1 */
+int Parser_bool(int *b, char *str);
#endif