README
1This is the README file for the beta release of the uuconf library.
2
3It was written by Ian Lance Taylor. I can be reached at ian@airs.com.
4
5This package is covered by the Gnu Library General Public License.
6See the file COPYING.LIB for details. If you would like to do
7something with this package that you feel is reasonable but you feel
8is prohibited by the license, contact me to see if we can work it out.
9
10WHAT IT IS
11
12This is a beta release of the uuconf library. The uuconf library
13provides a set of functions which can be used to read UUCP
14configuration files. V2, HDB, and Taylor UUCP configuration files are
15supported.
16
17Also included are two programs, uuchk and uuconv. uuchk will read
18configuration files and display the information it finds in a verbose
19format. This can be helpful to ensure that your configuration files
20are set up as you expect. uuconv can be used to convert configuration
21files from one type to another. This is particularly helpful for
22people installing Taylor UUCP on a existing system who want to take
23advantage of the additional functionality provided by the Taylor UUCP
24configuration files.
25
26This is strictly a beta release. The library provides all the
27information needed for uuchk and uuconv, but does not yet provide
28everything needed for uucp or cu. I am releasing it now to get
29feedback and to provide the uuconv program to people using Taylor
30UUCP.
31
32This may well be the only time this library is release independently.
33This library will be provided with Taylor UUCP, and future releases of
34the library will probably only occur as part of the complete Taylor
35UUCP package.
36
37HOW TO USE IT
38
39Configure and optionally install the package as described in INSTALL.
40
41The functions provided by the library are described in uuconf.h. At
42the moment there is no additional documentation.
43
44Programs which use the library should include uuconf.h, and should not
45include any of the other header files. The functions listed in
46uuconf.h all begin with the string "uuconf_". The internal library
47functions all begin with the string "_uuconf_". The internal library
48functions should not be called by a program which uses the library, as
49they may change in future releases. The uuchk program is an example
50of program which uses the library; uuconv is not, as it relies upon
51internal data structures.
52
53The uuchk program takes a single optional option, -I, which may be
54used to specify an alternate Taylor UUCP main configuration file. The
55default configuration file is $(newconfigdir)/config ($(newconfigdir)
56is defined in Makefile). For example:
57 uuchk
58 uuchk -I /usr/tmp/tstuu/Config1
59
60The uuconv program requires two options: -i to specify the input type
61and -o to specify the output type. Both options take a string
62argument, which must be one of "v2", "hdb", or "taylor". uuconv also
63takes an optional -I option, which is the same as the -I option to
64uuchk. The conversion is not intended to be perfect, and the results
65should be manually inspected. In particular, the dialcode file is not
66converted (as the format is the same for all three configuration file
67types, it may simply be copied to the appropriate new name). uuconv
68will create new files in the current working directory. For example:
69 uuconv -i hdb -o taylor
70 uuconv -i taylor -I /usr/tmp/tstuu/Config1 -o v2
71
72NOTES
73
74The initial underscore on the internal library functions is required
75by the GNU standards. As ANSI C reserves external identifiers with an
76initial underscore for the implementation, it is possible, though
77unlikely, that this will cause problems on other implementations; no
78workaround is currently provided for such problems.
79
80The library functions rely upon the following functions:
81
82 fclose fopen free fseek
83 ftell getc isalpha isdigit
84 islower isspace isupper malloc
85 realloc rewind strchr strcmp
86 strcspn strlen strncmp strspn
87 tolower toupper
88
89and the following header files:
90
91 ctype.h errno.h stdio.h
92
93If the following functions cannot be found by the configure script,
94replacements will be used (the replacement for strerror is Unix
95dependent):
96
97 getline memcpy strcasecmp strdup
98 strerror strncasecmp strtol
99
100If the following header files are found, they will be included:
101
102 libc.h limits.h memory.h stddef.h
103 stdlib.h string.h strings.h sys/types.h
104
105The following functions are required on Unix only:
106
107 fcntl fileno
108
109The following headers are used, if found, on Unix only:
110
111 fcntl.h sys/file.h
112