The file /etc/local/names is then opened and
read, and each of the two words in that file is added to the two words that are
already in the class.
22.1.2.1 scanf(3) variations
The file form of the class configuration command allows different formatting patterns
to be used with scanf(3).* But the program form does not allow any variation,
and so its scanf(3) pattern is always %s, which tells scanf(3) to read only the first
whitespace-delimited word from each line of text:
FX file pat ?†? with scanf(3) pattern
FX |program ?†? always ???%s???
FX key@dbmap ?†? cannot be used with scanf(3)
If the optional pat argument to the file form is missing, the pattern given to scanf(3)
is %s. The optional pat argument is separated from the file argument by one or more
spaces or tabs. It should not be quoted, and it consists of everything from its first
character to the end of the line. Internally, scanf(3) is called with:
sscanf(result, pat, input)
Here, result is the string array element to be added to the class definition. The pat is
the scanf(3) pattern, and input is the line of text read from the file.
* The version of sendmail that you are using must have been compiled with SCANF defined (?§3.4.49 on page
137) for scanf(3) to be usable from within the configuration file.
This is the Title of the Book, eMatter Edition
Copyright ?© 2007 O??™Reilly & Associates, Inc.
Pages:
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
1506
1507
1508
1509
1510
1511
1512
1513
1514
1515