Lines Matching defs:cfile

72 	struct parse *cfile;
125 cfile = (struct parse *)0;
163 new_parse (&cfile, -1, fbuf, ulen, filename, 0); /* XXX */
165 new_parse (&cfile, file, (char *)0, 0, filename, 0);
169 status = lease_file_subparse (cfile);
171 status = conf_file_subparse (cfile, group, group_type);
172 end_parse (&cfile);
185 struct parse *cfile = (struct parse *)0;
198 new_parse (&cfile, -1, fbuf, flen, data, 0);
200 lease_file_subparse (cfile);
202 conf_file_subparse (cfile, root_group, ROOT_GROUP);
203 end_parse (&cfile);
226 isc_result_t conf_file_subparse (struct parse *cfile, struct group *group,
235 token = peek_token (&val, (unsigned *)0, cfile);
238 declaration = parse_statement (cfile, group, group_type,
242 token = next_token (&val, (unsigned *)0, cfile);
244 status = cfile -> warnings_occurred ? ISC_R_BADPARSE : ISC_R_SUCCESS;
253 isc_result_t lease_file_subparse (struct parse *cfile)
260 token = next_token (&val, (unsigned *)0, cfile);
265 if (parse_lease_declaration (&lease, cfile)) {
269 parse_warn (cfile,
272 parse_host_declaration (cfile, root_group);
274 parse_group_declaration (cfile, root_group);
278 (cfile, (dhcp_failover_state_t *)0);
282 skip_to_semi (cfile);
287 status = cfile -> warnings_occurred ? ISC_R_BADPARSE : ISC_R_SUCCESS;
323 int parse_statement (cfile, group, type, host_decl, declaration)
324 struct parse *cfile;
342 token = peek_token (&val, (unsigned *)0, cfile);
346 next_token (&val, (unsigned *)0, cfile);
347 token = next_token (&val, (unsigned *)0, cfile);
349 parse_warn (cfile, "filename string expected.");
350 skip_to_semi (cfile);
354 parse_warn (cfile, "%s: bad parse.", val);
355 parse_semi (cfile);
360 next_token (&val, (unsigned *)0, cfile);
362 parse_host_declaration (cfile, group);
364 parse_warn (cfile,
366 skip_to_semi (cfile);
371 next_token (&val, (unsigned *)0, cfile);
373 parse_group_declaration (cfile, group);
375 parse_warn (cfile,
377 skip_to_semi (cfile);
382 next_token (&val, (unsigned *)0, cfile);
383 parsed_time = parse_timestamp (cfile);
387 next_token (&val, (unsigned *)0, cfile);
392 parse_warn (cfile, "shared-network parameters not %s.",
394 skip_to_semi (cfile);
398 parse_shared_net_declaration (cfile, group);
402 next_token (&val, (unsigned *)0, cfile);
405 parse_warn (cfile,
407 skip_to_semi (cfile);
413 parse_subnet_declaration (cfile,
431 parse_subnet_declaration (cfile, share);
454 next_token (&val, (unsigned *)0, cfile);
456 parse_warn (cfile,
458 skip_to_semi (cfile);
461 parse_class_declaration ((struct class **)0, cfile, group, 0);
465 next_token (&val, (unsigned *)0, cfile);
467 parse_warn (cfile,
469 skip_to_semi (cfile);
472 parse_class_declaration ((struct class **)0, cfile, group, 1);
476 next_token (&val, (unsigned *)0, cfile);
478 parse_warn (cfile,
480 skip_to_semi (cfile);
483 parse_class_declaration ((struct class **)0, cfile, group, 2);
487 next_token (&val, (unsigned *)0, cfile);
489 parse_warn (cfile,
491 skip_to_semi (cfile);
494 parse_class_declaration ((struct class **)0, cfile, group, 3);
498 next_token (&val, (unsigned *)0, cfile);
500 parse_hardware_param (cfile, &hardware);
504 parse_warn (cfile, "hardware address parameter %s",
509 next_token (&val, (unsigned *)0, cfile);
511 if (parse_fixed_addr_param (&cache, cfile)) {
515 parse_warn (cfile,
522 parse_warn (cfile,
531 next_token (&val, (unsigned *)0, cfile);
533 parse_warn (cfile, "pool declared outside of network");
536 parse_warn (cfile, "pool declared within pool.");
538 parse_pool_statement (cfile, group, type);
542 next_token (&val, (unsigned *)0, cfile);
544 parse_warn (cfile,
546 skip_to_semi (cfile);
549 parse_address_range (cfile, group, type, (struct pool *)0,
554 token = next_token (&val, (unsigned *)0, cfile);
555 token = next_token (&val, (unsigned *)0, cfile);
561 parse_warn (cfile, "expecting assertion");
562 skip_to_semi (cfile);
567 token = next_token (&val, (unsigned *)0, cfile);
571 parse_warn (cfile, "authority makes no sense here.");
572 parse_semi (cfile);
579 token = next_token (&val, (unsigned *)0, cfile);
583 token = next_token (&val, (unsigned *)0, cfile);
584 token = peek_token (&val, (unsigned *)0, cfile);
587 parse_warn (cfile,
590 skip_to_semi (cfile);
593 parse_option_space_decl (cfile);
598 option = parse_option_name (cfile, 1, &known);
600 token = peek_token (&val, (unsigned *)0, cfile);
603 parse_warn (cfile,
606 skip_to_semi (cfile);
610 next_token (&val, (unsigned *)0, cfile);
611 if (!parse_option_code_definition (cfile,
620 parse_warn (cfile, "unknown option %s.%s",
623 skip_to_semi (cfile);
631 (&et, cfile, 1, option,
642 parse_warn (cfile, "failover peers may only be %s",
645 skip_to_semi (cfile);
648 token = next_token (&val, (unsigned *)0, cfile);
650 parse_failover_peer (cfile, group, type);
652 parse_warn (cfile, "No failover support.");
653 skip_to_semi (cfile);
660 if (!parse_executable_statement (&et, cfile, &lose,
664 parse_warn (cfile,
667 parse_warn (cfile,
670 skip_to_semi (cfile);
722 void parse_failover_peer (cfile, group, type)
723 struct parse *cfile;
740 token = next_token (&val, (unsigned *)0, cfile);
742 parse_warn (cfile, "expecting \"peer\"");
743 skip_to_semi (cfile);
747 token = next_token (&val, (unsigned *)0, cfile);
754 parse_warn (cfile, "expecting failover peer name.");
755 skip_to_semi (cfile);
763 token = next_token (&val, (unsigned *)0, cfile);
767 parse_warn (cfile, "failover peer reference not %s",
771 parse_warn (cfile, "reference to unknown%s%s",
783 parse_warn (cfile, "state declaration for unknown%s%s",
787 parse_failover_state_declaration (cfile, peer);
791 parse_warn (cfile, "expecting left brace");
792 skip_to_semi (cfile);
797 parse_warn (cfile, "redeclaration of failover peer %s", name);
798 skip_to_rbrace (cfile, 1);
814 token = next_token (&val, (unsigned *)0, cfile);
826 parse_warn (cfile,
837 if (!parse_ip_addr_or_hostname (&expr, cfile, 0)) {
838 skip_to_rbrace (cfile, 1);
849 token = next_token (&val, (unsigned *)0, cfile);
851 parse_warn (cfile, "expecting number");
852 skip_to_rbrace (cfile, 1);
860 token = next_token (&val, (unsigned *)0, cfile);
862 parse_warn (cfile, "expecting number.");
863 skip_to_rbrace (cfile, 1);
881 parse_warn (cfile,
884 if (!parse_numeric_aggregate (cfile, hba, &hba_len,
886 skip_to_rbrace (cfile, 1);
891 parse_warn (cfile,
908 token = next_token (&val, (unsigned *)0, cfile);
910 parse_warn (cfile,
914 parse_warn (cfile, "expecting number");
915 skip_to_rbrace (cfile, 1);
921 parse_warn (cfile, "split must be < 256");
933 token = next_token (&val, (unsigned *)0, cfile);
935 parse_warn (cfile, "expecting 'balance'");
937 skip_to_rbrace (cfile, 1);
940 token = next_token (&val, (unsigned *)0, cfile);
942 parse_warn (cfile, "expecting 'max'");
945 token = next_token (&val, (unsigned *)0, cfile);
947 parse_warn (cfile, "expecting 'secs'");
950 token = next_token (&val, (unsigned *)0, cfile);
952 parse_warn (cfile, "expecting number");
959 parse_warn (cfile,
961 skip_to_rbrace (cfile, 1);
965 if (token != RBRACE && !parse_semi (cfile)) {
966 skip_to_rbrace (cfile, 1);
976 parse_warn (cfile, "peer address may not be omitted");
980 parse_warn (cfile, "local port may not be omitted");
982 parse_warn (cfile, "peer port may not be omitted");
986 parse_warn (cfile,
989 parse_warn (cfile,
1019 parse_warn (cfile, "failover peer %s: %s",
1024 void parse_failover_state_declaration (struct parse *cfile,
1034 token = next_token (&val, (unsigned *)0, cfile);
1036 parse_warn (cfile, "expecting \"peer\"");
1037 skip_to_semi (cfile);
1041 token = next_token (&val, (unsigned *)0, cfile);
1049 parse_warn (cfile, "expecting failover peer name.");
1050 skip_to_semi (cfile);
1058 parse_warn (cfile, "unknown failover peer: %s", name);
1059 skip_to_semi (cfile);
1063 token = next_token (&val, (unsigned *)0, cfile);
1065 parse_warn (cfile, "expecting 'state'");
1067 skip_to_semi (cfile);
1074 token = next_token (&val, (unsigned *)0, cfile);
1076 parse_warn (cfile, "expecting left brace");
1078 skip_to_semi (cfile);
1083 token = next_token (&val, (unsigned *)0, cfile);
1090 token = next_token (&val, (unsigned *)0, cfile);
1092 parse_warn (cfile, "expecting 'state'");
1095 parse_failover_state (cfile,
1105 parse_warn (cfile,
1109 token = next_token (&val, (unsigned *)0, cfile);
1111 parse_warn (cfile, "expecting a number.");
1115 parse_semi (cfile);
1119 parse_warn (cfile, "expecting state setting.");
1121 skip_to_rbrace (cfile, 1);
1129 void parse_failover_state (cfile, state, stos)
1130 struct parse *cfile;
1139 token = next_token (&val, (unsigned *)0, cfile);
1190 parse_warn (cfile, "unknown failover state");
1191 skip_to_semi (cfile);
1195 token = next_token (&val, (unsigned *)0, cfile);
1200 parse_warn (cfile, "expecting \"at\"");
1201 skip_to_semi (cfile);
1205 stos_in = parse_date (cfile);
1248 void parse_pool_statement (cfile, group, type)
1249 struct parse *cfile;
1288 if (!parse_lbrace (cfile)) {
1294 token = peek_token (&val, (unsigned *)0, cfile);
1297 next_token (&val, (unsigned *)0, cfile);
1298 token = next_token (&val, (unsigned *)0, cfile);
1301 cfile)) != PEER) {
1302 parse_warn (cfile,
1304 skip_to_semi (cfile);
1316 next_token (&val, (unsigned *)0, cfile);
1317 token = next_token (&val, (unsigned *)0, cfile);
1319 parse_warn (cfile, "expecting 'peer'.");
1320 skip_to_semi (cfile);
1323 token = next_token (&val, (unsigned *)0, cfile);
1325 parse_warn (cfile, "expecting string.");
1326 skip_to_semi (cfile);
1335 parse_warn (cfile,
1340 parse_semi (cfile);
1345 next_token (&val, (unsigned *)0, cfile);
1346 parse_address_range (cfile, group, type,
1355 next_token (&val, (unsigned *)0, cfile);
1356 token = next_token (&val, (unsigned *)0, cfile);
1362 cfile) != CLIENTS) {
1363 parse_warn (cfile,
1365 skip_to_semi (cfile);
1400 cfile) != TOKEN_BOOTP) {
1401 parse_warn (cfile,
1403 skip_to_semi (cfile);
1411 cfile) != OF) {
1412 parse_warn (cfile, "expecting \"of\"");
1413 skip_to_semi (cfile);
1418 cfile) != STRING) {
1419 parse_warn (cfile,
1421 skip_to_semi (cfile);
1429 parse_warn (cfile,
1434 parse_warn (cfile, "expecting permit type.");
1435 skip_to_semi (cfile);
1441 parse_semi (cfile);
1449 next_token (&val, (unsigned *)0, cfile);
1454 declaration = parse_statement (cfile, pool -> group,
1491 parse_warn (cfile,
1556 parse_warn (cfile, "Pool declaration with no address range.");
1577 int parse_boolean (cfile)
1578 struct parse *cfile;
1584 token = next_token (&val, (unsigned *)0, cfile);
1592 parse_warn (cfile,
1594 skip_to_semi (cfile);
1597 parse_semi (cfile);
1604 int parse_lbrace (cfile)
1605 struct parse *cfile;
1610 token = next_token (&val, (unsigned *)0, cfile);
1612 parse_warn (cfile, "expecting left brace.");
1613 skip_to_semi (cfile);
1622 void parse_host_declaration (cfile, group)
1623 struct parse *cfile;
1635 name = parse_host_name (cfile);
1637 parse_warn (cfile, "expecting a name for host declaration.");
1638 skip_to_semi (cfile);
1655 if (!parse_lbrace (cfile))
1659 token = peek_token (&val, (unsigned *)0, cfile);
1661 token = next_token (&val, (unsigned *)0, cfile);
1665 token = next_token (&val, (unsigned *)0, cfile);
1666 parse_warn (cfile, "unexpected end of file");
1673 token = next_token (&val, (unsigned *)0, cfile);
1674 if (!parse_semi (cfile))
1682 token = next_token (&val, (unsigned *)0, cfile);
1683 if (!parse_semi (cfile))
1690 token = next_token (&val, (unsigned *)0, cfile);
1691 token = next_token (&val, (unsigned *)0, cfile);
1693 parse_warn (cfile,
1695 skip_to_rbrace (cfile, 1);
1701 parse_warn (cfile, "unknown group %s in host %s",
1711 if (!parse_semi (cfile))
1721 token = next_token (&val, (unsigned *)0, cfile);
1725 token = peek_token (&val, (unsigned *)0, cfile);
1727 token = next_token (&val, &len, cfile);
1733 (cfile,
1736 parse_warn (cfile,
1738 skip_to_semi (cfile);
1755 if (!parse_semi (cfile))
1759 declaration = parse_statement (cfile, host -> group,
1798 parse_warn (cfile, "host %s: %s", host -> name,
1807 int parse_class_declaration (cp, cfile, group, type)
1809 struct parse *cfile;
1826 token = next_token (&val, (unsigned *)0, cfile);
1828 parse_warn (cfile, "Expecting class name");
1829 skip_to_semi (cfile);
1846 parse_warn (cfile, "no class named %s", val);
1847 skip_to_semi (cfile);
1883 token = peek_token (&val, (unsigned *)0, cfile);
1885 token = next_token (&val, &data.len, cfile);
1900 if (!parse_cshl (&data, cfile)) {
1905 parse_warn (cfile, "Expecting string or hex list.");
1978 token = peek_token (&val, (unsigned *)0, cfile);
1980 next_token (&val, (unsigned *)0, cfile);
1994 if (!parse_lbrace (cfile)) {
2002 token = peek_token (&val, (unsigned *)0, cfile);
2004 token = next_token (&val, (unsigned *)0, cfile);
2007 token = next_token (&val, (unsigned *)0, cfile);
2008 parse_warn (cfile, "unexpected end of file");
2012 parse_warn (cfile,
2014 skip_to_semi (cfile);
2017 token = next_token (&val, (unsigned *)0, cfile);
2018 token = peek_token (&val, (unsigned *)0, cfile);
2022 parse_warn (cfile, "can't override match.");
2023 skip_to_semi (cfile);
2026 token = next_token (&val, (unsigned *)0, cfile);
2027 if (!parse_boolean_expression (&class -> expr, cfile,
2030 parse_warn (cfile,
2032 skip_to_semi (cfile);
2039 parse_semi (cfile);
2043 parse_warn (cfile,
2045 skip_to_semi (cfile);
2048 token = next_token (&val, (unsigned *)0, cfile);
2050 token = next_token (&val, (unsigned *)0, cfile);
2052 parse_warn (cfile,
2054 skip_to_semi (cfile);
2059 parse_warn (cfile,
2062 skip_to_semi (cfile);
2066 cfile, &lose)) {
2068 parse_warn (cfile,
2070 skip_to_semi (cfile);
2077 parse_semi (cfile);
2080 next_token (&val, (unsigned *)0, cfile);
2081 token = next_token (&val, (unsigned *)0, cfile);
2083 parse_warn (cfile, "expecting \"limit\"");
2085 skip_to_semi (cfile);
2088 token = next_token (&val, (unsigned *)0, cfile);
2090 parse_warn (cfile, "expecting a number");
2092 skip_to_semi (cfile);
2105 parse_semi (cfile);
2107 declaration = parse_statement (cfile, class -> group,
2135 void parse_shared_net_declaration (cfile, group)
2136 struct parse *cfile;
2156 token = peek_token (&val, (unsigned *)0, cfile);
2158 token = next_token (&val, (unsigned *)0, cfile);
2161 parse_warn (cfile, "zero-length shared network name");
2169 name = parse_host_name (cfile);
2171 parse_warn (cfile,
2173 skip_to_semi (cfile);
2180 if (!parse_lbrace (cfile)) {
2186 token = peek_token (&val, (unsigned *)0, cfile);
2188 token = next_token (&val, (unsigned *)0, cfile);
2190 parse_warn (cfile,
2197 token = next_token (&val, (unsigned *)0, cfile);
2198 parse_warn (cfile, "unexpected end of file");
2201 token = next_token (&val, (unsigned *)0, cfile);
2202 token = next_token (&val, (unsigned *)0, cfile);
2203 new_shared_network_interface (cfile, share, val);
2204 if (!parse_semi (cfile))
2209 declaration = parse_statement (cfile, share -> group,
2220 void parse_subnet_declaration (cfile, share)
2221 struct parse *cfile;
2244 if (!parse_numeric_aggregate (cfile, addr, &len, DOT, 10, 8)) {
2252 token = next_token (&val, (unsigned *)0, cfile);
2254 parse_warn (cfile, "Expecting netmask");
2255 skip_to_semi (cfile);
2260 if (!parse_numeric_aggregate (cfile, addr, &len, DOT, 10, 8)) {
2273 parse_warn (cfile,
2278 skip_to_semi (cfile);
2284 if (!parse_lbrace (cfile)) {
2290 token = peek_token (&val, (unsigned *)0, cfile);
2292 token = next_token (&val, (unsigned *)0, cfile);
2295 token = next_token (&val, (unsigned *)0, cfile);
2296 parse_warn (cfile, "unexpected end of file");
2299 token = next_token (&val, (unsigned *)0, cfile);
2300 token = next_token (&val, (unsigned *)0, cfile);
2301 new_shared_network_interface (cfile, share, val);
2302 if (!parse_semi (cfile))
2306 declaration = parse_statement (cfile, subnet -> group,
2345 void parse_group_declaration (cfile, group)
2346 struct parse *cfile;
2364 token = peek_token (&val, (unsigned *)0, cfile);
2366 next_token (&val, (unsigned *)0, cfile);
2374 if (!parse_lbrace (cfile)) {
2380 token = peek_token (&val, (unsigned *)0, cfile);
2382 token = next_token (&val, (unsigned *)0, cfile);
2385 token = next_token (&val, (unsigned *)0, cfile);
2386 parse_warn (cfile, "unexpected end of file");
2389 token = next_token (&val, (unsigned *)0, cfile);
2390 parse_semi (cfile);
2393 token = next_token (&val, (unsigned *)0, cfile);
2394 parse_semi (cfile);
2397 token = next_token (&val, (unsigned *)0, cfile);
2398 parse_semi (cfile);
2401 declaration = parse_statement (cfile, g, GROUP_DECL,
2438 int parse_fixed_addr_param (oc, cfile)
2440 struct parse *cfile;
2450 if (parse_ip_addr_or_hostname (&tmp, cfile, 1)) {
2466 token = peek_token (&val, (unsigned *)0, cfile);
2468 token = next_token (&val, (unsigned *)0, cfile);
2471 if (!parse_semi (cfile)) {
2488 TIME parse_timestamp (cfile)
2489 struct parse *cfile;
2493 rv = parse_date (cfile);
2513 int parse_lease_declaration (struct lease **lp, struct parse *cfile)
2546 if (!parse_numeric_aggregate (cfile, addr, &len, DOT, 10, 8)) {
2553 if (!parse_lbrace (cfile)) {
2559 token = next_token (&val, (unsigned *)0, cfile);
2563 parse_warn (cfile, "unexpected end of file");
2577 t = parse_date (cfile);
2618 token = peek_token (&val, (unsigned *)0, cfile);
2621 token = next_token (&val, &buflen, cfile);
2643 (cfile, (unsigned char *)0,
2653 parse_warn (cfile, "zero-length uid");
2655 parse_semi (cfile);
2659 parse_semi (cfile);
2667 token = next_token (&val, (unsigned *)0, cfile);
2670 skip_to_rbrace (cfile, 1);
2674 parse_semi (cfile);
2680 parse_hardware_param (cfile,
2687 parse_semi (cfile);
2694 parse_semi (cfile);
2699 token = next_token (&val, (unsigned *)0, cfile);
2701 parse_warn (cfile, "expecting 'binding'");
2702 skip_to_semi (cfile);
2711 token = next_token (&val, (unsigned *)0, cfile);
2713 parse_warn (cfile, "expecting 'state'");
2714 skip_to_semi (cfile);
2717 token = next_token (&val, (unsigned *)0, cfile);
2748 parse_warn (cfile,
2751 skip_to_semi (cfile);
2765 parse_semi (cfile);
2770 token = peek_token (&val, (unsigned *)0, cfile);
2772 if (!parse_string (cfile,
2780 parse_host_name (cfile);
2782 parse_semi (cfile);
2784 parse_warn (cfile,
2786 skip_to_semi (cfile);
2796 token = next_token (&val, (unsigned *)0, cfile);
2799 (unsigned *)0, cfile);
2801 parse_warn (cfile, "expecting string");
2803 skip_to_semi (cfile);
2812 parse_warn (cfile,
2814 parse_semi (cfile);
2821 cfile, (struct group *)0, 3);
2823 parse_warn (cfile, "expecting \"class\"");
2825 skip_to_semi (cfile);
2837 if (!parse_on_statement (&on, cfile, &lose)) {
2838 skip_to_rbrace (cfile, 1);
2865 if (parse_option_decl (&oc, cfile)) {
2868 parse_warn (cfile,
2892 token = next_token (&val, (unsigned *)0, cfile);
2894 parse_warn (cfile,
2898 skip_to_semi (cfile);
2937 token = next_token (&val, (unsigned *)0, cfile);
2939 parse_warn (cfile,
2945 token = peek_token (&val, (unsigned *)0, cfile);
2947 token = next_token (&val, &buflen, cfile);
2965 (cfile, (unsigned char *)0,
2988 token = next_token (&val, (unsigned *)0, cfile);
2989 token = next_token (&val, (unsigned *)0, cfile);
2991 parse_warn (cfile,
2994 skip_to_semi (cfile);
3004 (unsigned *)0, cfile);
3014 parse_warn (cfile,
3016 skip_to_semi (cfile);
3027 parse_semi (cfile);
3040 skip_to_semi (cfile);
3047 parse_warn (cfile,
3088 void parse_address_range (cfile, group, type, inpool, lpchain)
3089 struct parse *cfile;
3107 (unsigned *)0, cfile)) == DYNAMIC_BOOTP) {
3108 token = next_token (&val, (unsigned *)0, cfile);
3113 if (!parse_numeric_aggregate (cfile, addr, &len, DOT, 10, 8))
3119 token = peek_token (&val, (unsigned *)0, cfile);
3124 if (!parse_numeric_aggregate (cfile, addr, &len, DOT, 10, 8))
3130 token = next_token (&val, (unsigned *)0, cfile);
3132 parse_warn (cfile, "semicolon expected.");
3133 skip_to_semi (cfile);
3149 parse_warn (cfile, "address range not on network %s",
3224 parse_warn (cfile, "dynamic-bootp flag is %s",
3246 new_address_range (cfile, low, high, subnet, pool, lpchain);
3255 int parse_allow_deny (oc, cfile, flag)
3257 struct parse *cfile;
3269 token = next_token (&val, (unsigned *)0, cfile);
3311 parse_warn (cfile, "expecting allow/deny key");
3312 skip_to_semi (cfile);
3316 parse_semi (cfile);