Lines Matching refs:tokens

87 static int rule_parser(char **tokens);
89 static int ruletab_parser(char **tokens);
145 parser_include(char **tokens) in parser_include() argument
150 error = stat(tokens[1], &sb); in parser_include()
154 tokens[1], strerror(errno)); in parser_include()
156 chdir(dirname(tokens[1])); in parser_include()
157 read_config(basename(tokens[1]), RULES_FILE); in parser_include()
163 parser_jail(char **tokens) in parser_jail() argument
165 if (tokens[1][0] == 'y') { in parser_jail()
167 } else if (tokens[1][0] == 'n') { in parser_jail()
177 parser_hide(char **tokens) in parser_hide() argument
182 id = get_id(tokens[1]); in parser_hide()
190 parser_show(char **tokens) in parser_show() argument
195 id = get_id(tokens[1]); in parser_show()
203 parser_link(char **tokens) in parser_link() argument
208 id = get_id(tokens[1]); in parser_link()
210 rule->dest = strdup(tokens[2]); in parser_link()
217 parser_group(char **tokens) in parser_group() argument
223 gid = get_group(tokens[1], 1); in parser_group()
226 for (i = 2; tokens[i] != NULL; i++) { in parser_group()
227 id = get_id(tokens[i]); in parser_group()
246 parser_perm(char **tokens) in parser_perm() argument
255 id = get_id(tokens[1]); in parser_perm()
258 rule->mode = strtol(tokens[3], NULL, 8); in parser_perm()
259 uname = tokens[2]; in parser_perm()
260 grname = strchr(tokens[2], ':'); in parser_perm()
262 syntax_error("invalid format for user/group (%s)", tokens[2]); in parser_perm()
546 rule_check_num_args(char **tokens, int num) in rule_check_num_args() argument
550 for (i = 0; tokens[i] != NULL; i++) in rule_check_num_args()
606 char *tokens[256]; in process_line() local
629 tokens[0] = &buffer[c]; in process_line()
634 if ((c >= 1) && (&buffer[c] != tokens[n-1])) { in process_line()
638 tokens[n-1] = &buffer[c+1]; in process_line()
655 tokens[n++] = &buffer[c--]; in process_line()
658 tokens[n] = NULL; in process_line()
665 if ((quote) || (n < 2) || (tokens[0][0] == '\0')) in process_line()
670 ret = rule_parser(tokens); in process_line()
674 ret = ruletab_parser(tokens); in process_line()
685 rule_parser(char **tokens) in rule_parser() argument
691 for (i = 0; tokens[0][i] != '\0'; i++) in rule_parser()
692 tokens[0][i] = tolower(tokens[0][i]); in rule_parser()
695 if (rule_check_num_args(tokens, parsers[i].min_args) != 0) in rule_parser()
698 if (!strcmp(tokens[0], parsers[i].verb)) { in rule_parser()
699 parsers[i].parser(tokens); in rule_parser()
705 syntax_error("unknown verb/command %s", tokens[0]); in rule_parser()
713 ruletab_parser(char **tokens)
720 if (rule_check_num_args(tokens, 2) != 0)
723 error = stat(tokens[0], &sb);
726 tokens[0], strerror(errno));
729 if (tokens[0][0] != '/') {
731 tokens[0]);
734 for (i = 1; tokens[i] != NULL; i++) {
736 rt->mntpoint = strdup(tokens[0]);
737 rt->rule_file = strdup(tokens[i]);