diff options
| author | Zheng Da <zhengda1936@gmail.com> | 2009-12-06 05:26:23 +0100 |
|---|---|---|
| committer | Zheng Da <zhengda1936@gmail.com> | 2009-12-06 05:26:23 +0100 |
| commit | 8a6d48c0542876eb3acfc0970c0ab7872db08d5f (patch) | |
| tree | 496e78bc728317ea779781b92f897d16936ee231 /libdde_linux26/contrib/include/linux/parser.h | |
| parent | b4bffcfcdf3ab7a55d664e9aa5907f88da503f38 (diff) | |
check in the original version of dde linux26.
Diffstat (limited to 'libdde_linux26/contrib/include/linux/parser.h')
| -rw-r--r-- | libdde_linux26/contrib/include/linux/parser.h | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/libdde_linux26/contrib/include/linux/parser.h b/libdde_linux26/contrib/include/linux/parser.h new file mode 100644 index 00000000..ea2281e7 --- /dev/null +++ b/libdde_linux26/contrib/include/linux/parser.h @@ -0,0 +1,33 @@ +/* + * linux/include/linux/parser.h + * + * Header for lib/parser.c + * Intended use of these functions is parsing filesystem argument lists, + * but could potentially be used anywhere else that simple option=arg + * parsing is required. + */ + + +/* associates an integer enumerator with a pattern string. */ +struct match_token { + int token; + const char *pattern; +}; + +typedef struct match_token match_table_t[]; + +/* Maximum number of arguments that match_token will find in a pattern */ +enum {MAX_OPT_ARGS = 3}; + +/* Describe the location within a string of a substring */ +typedef struct { + char *from; + char *to; +} substring_t; + +int match_token(char *, const match_table_t table, substring_t args[]); +int match_int(substring_t *, int *result); +int match_octal(substring_t *, int *result); +int match_hex(substring_t *, int *result); +size_t match_strlcpy(char *, const substring_t *, size_t); +char *match_strdup(const substring_t *); |
