diff options
-rw-r--r-- | doc/pies.texi | 290 | ||||
-rw-r--r-- | src/comp.c | 18 | ||||
-rw-r--r-- | src/meta1parse.c | 6 |
3 files changed, 183 insertions, 131 deletions
diff --git a/doc/pies.texi b/doc/pies.texi index 51eac43..13deec0 100644 --- a/doc/pies.texi +++ b/doc/pies.texi | |||
@@ -1,5 +1,4 @@ | |||
1 | \input texinfo @c -*-texinfo-*- | 1 | \input texinfo @c -*-texinfo-*- |
2 | @smallbook | ||
3 | @c %**start of header | 2 | @c %**start of header |
4 | @setfilename pies.info | 3 | @setfilename pies.info |
5 | @settitle GNU Pies Manual | 4 | @settitle GNU Pies Manual |
@@ -251,9 +250,9 @@ this format, the program also understands configuration files in | |||
251 | Alternative configuration files may be specified using @option{--config-file} | 250 | Alternative configuration files may be specified using @option{--config-file} |
252 | (@option{-c} command line option), e.g.: | 251 | (@option{-c} command line option), e.g.: |
253 | 252 | ||
254 | @smallexample | 253 | @example |
255 | pies --config-file @var{filename} | 254 | pies --config-file @var{filename} |
256 | @end smallexample | 255 | @end example |
257 | 256 | ||
258 | @anchor{config syntax} | 257 | @anchor{config syntax} |
259 | Any number of such options may be given. The files named in | 258 | Any number of such options may be given. The files named in |
@@ -286,13 +285,13 @@ the end of the command line or the next occurrence of the | |||
286 | @command{pies} to read several configuration files of various formats | 285 | @command{pies} to read several configuration files of various formats |
287 | in a single command line, e.g.: | 286 | in a single command line, e.g.: |
288 | 287 | ||
289 | @smallexample | 288 | @example |
290 | @group | 289 | @group |
291 | pies --config-file /etc/pies.conf \ | 290 | pies --config-file /etc/pies.conf \ |
292 | --syntax=inetd --config-file /etc/inetd.conf \ | 291 | --syntax=inetd --config-file /etc/inetd.conf \ |
293 | --syntax=meta1 --config-file /etc/meta1/meta1.conf | 292 | --syntax=meta1 --config-file /etc/meta1/meta1.conf |
294 | @end group | 293 | @end group |
295 | @end smallexample | 294 | @end example |
296 | 295 | ||
297 | @xopindex{config-help, introduced} | 296 | @xopindex{config-help, introduced} |
298 | The rest of this chapter concerns the @command{pies} native | 297 | The rest of this chapter concerns the @command{pies} native |
@@ -321,10 +320,11 @@ line option. | |||
321 | @menu | 320 | @menu |
322 | * Syntax:: Configuration File Syntax | 321 | * Syntax:: Configuration File Syntax |
323 | * Component Statement:: | 322 | * Component Statement:: |
324 | * Notification:: Mail Notification | 323 | * Notification:: Mail Notification. |
325 | * ACL:: Access Control Lists | 324 | * ACL:: Access Control Lists. |
326 | * inetd:: Using @command{inetd} Configuration Files | 325 | * control:: The @samp{control} statement. |
327 | * include-meta1:: Using @command{meta1} Configuration Files | 326 | * inetd:: Using @command{inetd} Configuration Files. |
327 | * include-meta1:: Using @command{meta1} Configuration Files. | ||
328 | * Global Configuration:: | 328 | * Global Configuration:: |
329 | * Pies Privileges:: | 329 | * Pies Privileges:: |
330 | * State Files:: | 330 | * State Files:: |
@@ -355,10 +355,10 @@ configuration file. There are two kinds of comments: | |||
355 | single-line and multi-line comments. @dfn{Single-line} comments start | 355 | single-line and multi-line comments. @dfn{Single-line} comments start |
356 | with @samp{#} or @samp{//} and continue to the end of the line: | 356 | with @samp{#} or @samp{//} and continue to the end of the line: |
357 | 357 | ||
358 | @smallexample | 358 | @example |
359 | # This is a comment | 359 | # This is a comment |
360 | // This too is a comment | 360 | // This too is a comment |
361 | @end smallexample | 361 | @end example |
362 | 362 | ||
363 | The following constructs, appearing at the start of a line are | 363 | The following constructs, appearing at the start of a line are |
364 | treated specially: @samp{#include}, @samp{#include_once}, | 364 | treated specially: @samp{#include}, @samp{#include_once}, |
@@ -384,11 +384,11 @@ with a semicolon (@samp{;}). | |||
384 | 384 | ||
385 | Examples of simple statements are: | 385 | Examples of simple statements are: |
386 | 386 | ||
387 | @smallexample | 387 | @example |
388 | pidfile /var/run/pies.pid; | 388 | pidfile /var/run/pies.pid; |
389 | source-info yes; | 389 | source-info yes; |
390 | debug 10; | 390 | debug 10; |
391 | @end smallexample | 391 | @end example |
392 | 392 | ||
393 | A @dfn{keyword} begins with a letter and may contain letters, | 393 | A @dfn{keyword} begins with a letter and may contain letters, |
394 | decimal digits, underscores (@samp{_}) and dashes (@samp{-}). | 394 | decimal digits, underscores (@samp{_}) and dashes (@samp{-}). |
@@ -442,12 +442,12 @@ a newline character (@acronym{ASCII} 10) is removed from | |||
442 | the string. This allows to split long strings over several | 442 | the string. This allows to split long strings over several |
443 | physical lines, e.g.: | 443 | physical lines, e.g.: |
444 | 444 | ||
445 | @smallexample | 445 | @example |
446 | @group | 446 | @group |
447 | "a long string may be\ | 447 | "a long string may be\ |
448 | split over several lines" | 448 | split over several lines" |
449 | @end group | 449 | @end group |
450 | @end smallexample | 450 | @end example |
451 | 451 | ||
452 | If the character following a backslash is not one of those specified | 452 | If the character following a backslash is not one of those specified |
453 | above, the backslash is ignored and a warning is issued. | 453 | above, the backslash is ignored and a warning is issued. |
@@ -457,12 +457,12 @@ another way to split long strings over several lines to improve | |||
457 | readability. The following fragment produces the same result as in the | 457 | readability. The following fragment produces the same result as in the |
458 | example above: | 458 | example above: |
459 | 459 | ||
460 | @smallexample | 460 | @example |
461 | @group | 461 | @group |
462 | "a long string may be" | 462 | "a long string may be" |
463 | " split over several lines" | 463 | " split over several lines" |
464 | @end group | 464 | @end group |
465 | @end smallexample | 465 | @end example |
466 | 466 | ||
467 | @anchor{here-document} | 467 | @anchor{here-document} |
468 | @item Here-document | 468 | @item Here-document |
@@ -475,14 +475,14 @@ the following lines up to the line containing only @var{word}, with | |||
475 | possible trailing blanks. Any lines thus read are concatenated | 475 | possible trailing blanks. Any lines thus read are concatenated |
476 | together into a single string. For example: | 476 | together into a single string. For example: |
477 | 477 | ||
478 | @smallexample | 478 | @example |
479 | @group | 479 | @group |
480 | <<EOT | 480 | <<EOT |
481 | A multiline | 481 | A multiline |
482 | string | 482 | string |
483 | EOT | 483 | EOT |
484 | @end group | 484 | @end group |
485 | @end smallexample | 485 | @end example |
486 | 486 | ||
487 | Body of a here-document is interpreted the same way as | 487 | Body of a here-document is interpreted the same way as |
488 | double-quoted string, unless @var{word} is preceded by a backslash | 488 | double-quoted string, unless @var{word} is preceded by a backslash |
@@ -495,14 +495,14 @@ tab characters are stripped from input lines and the line containing | |||
495 | all leading whitespace is stripped from them. This allows to indent | 495 | all leading whitespace is stripped from them. This allows to indent |
496 | here-documents in a natural fashion. For example: | 496 | here-documents in a natural fashion. For example: |
497 | 497 | ||
498 | @smallexample | 498 | @example |
499 | @group | 499 | @group |
500 | <<- TEXT | 500 | <<- TEXT |
501 | All leading whitespace will be | 501 | All leading whitespace will be |
502 | ignored when reading these lines. | 502 | ignored when reading these lines. |
503 | TEXT | 503 | TEXT |
504 | @end group | 504 | @end group |
505 | @end smallexample | 505 | @end example |
506 | 506 | ||
507 | It is important that the terminating delimiter be the only token on | 507 | It is important that the terminating delimiter be the only token on |
508 | its line. The only exception to this rule is allowed if a | 508 | its line. The only exception to this rule is allowed if a |
@@ -510,11 +510,11 @@ here-document appears as the last element of a statement. In this | |||
510 | case a semicolon can be placed on the same line with its terminating | 510 | case a semicolon can be placed on the same line with its terminating |
511 | delimiter, as in: | 511 | delimiter, as in: |
512 | 512 | ||
513 | @smallexample | 513 | @example |
514 | help-text <<-EOT | 514 | help-text <<-EOT |
515 | A sample help text. | 515 | A sample help text. |
516 | EOT; | 516 | EOT; |
517 | @end smallexample | 517 | @end example |
518 | 518 | ||
519 | @item list | 519 | @item list |
520 | @cindex list | 520 | @cindex list |
@@ -522,9 +522,9 @@ EOT; | |||
522 | delimited by parentheses. The following example shows a statement | 522 | delimited by parentheses. The following example shows a statement |
523 | whose value is a list of strings: | 523 | whose value is a list of strings: |
524 | 524 | ||
525 | @smallexample | 525 | @example |
526 | dependents (pmult, auth); | 526 | dependents (pmult, auth); |
527 | @end smallexample | 527 | @end example |
528 | 528 | ||
529 | In any case where a list is appropriate, a single value is allowed | 529 | In any case where a list is appropriate, a single value is allowed |
530 | without being a member of a list: it is equivalent to a list with a | 530 | without being a member of a list: it is equivalent to a list with a |
@@ -540,13 +540,13 @@ statements. It consists of a keyword, followed by an optional value, | |||
540 | and a sequence of statements enclosed in curly braces, as shown in | 540 | and a sequence of statements enclosed in curly braces, as shown in |
541 | the example below: | 541 | the example below: |
542 | 542 | ||
543 | @smallexample | 543 | @example |
544 | @group | 544 | @group |
545 | component multiplexor @{ | 545 | component multiplexor @{ |
546 | command "pmult"; | 546 | command "pmult"; |
547 | @} | 547 | @} |
548 | @end group | 548 | @end group |
549 | @end smallexample | 549 | @end example |
550 | 550 | ||
551 | The closing curly brace may be followed by a semicolon, although | 551 | The closing curly brace may be followed by a semicolon, although |
552 | this is not required. | 552 | this is not required. |
@@ -684,11 +684,11 @@ compatibility with the @sc{c} preprocessor. | |||
684 | The @code{component} statement defines a new component: | 684 | The @code{component} statement defines a new component: |
685 | @end deffn | 685 | @end deffn |
686 | 686 | ||
687 | @smallexample | 687 | @example |
688 | component @var{tag} @{ | 688 | component @var{tag} @{ |
689 | @dots{} | 689 | @dots{} |
690 | @} | 690 | @} |
691 | @end smallexample | 691 | @end example |
692 | 692 | ||
693 | The component is identified by its @dfn{tag}, which is given as | 693 | The component is identified by its @dfn{tag}, which is given as |
694 | argument to the @code{component} keyword. Component declarations with | 694 | argument to the @code{component} keyword. Component declarations with |
@@ -960,9 +960,9 @@ utility: | |||
960 | 960 | ||
961 | For example: | 961 | For example: |
962 | 962 | ||
963 | @smallexample | 963 | @example |
964 | limits T10 R20 U16 P20 | 964 | limi |