1 | /***************************************
2 | $Revision:
3 |
4 | CA module: a wrapper for the functions which parse the
5 | dictionary, configuration and source files.
6 |
7 | Status: NOT REVIEWED, NOT TESTED
8 |
9 | Author(s): Ambrose Magee
10 |
11 | ******************//******************
12 | Modification History:
13 |
14 | ******************/
15 |
16 | /************************************
17 | Copyright (c) 2000 RIPE NCC
18 |
19 | All Rights Reserved
20 |
21 | Permission to use, copy, modify, and distribute this software and its
22 | documentation for any purpose and without fee is hereby granted,
23 | provided that the above copyright notice appear in all copies and that
24 | both that copyright notice and this permission notice appear in
25 | supporting documentation, and that the name of the author not be
26 | used in advertising or publicity pertaining to distribution of the
27 | software without specific, written prior permission.
28 |
29 | THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
30 | ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS; IN NO EVENT SHALL
31 | AUTHOR BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY
32 | DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN
33 | AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
34 | OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
35 | ***************************************/
36 |
37 | #include <stdio.h>
38 | #include <string.h>
39 | #include "ca_defs.h"
40 | #include "ca_configFns.h"
41 | #include "ca_dictionary.h"
42 |
43 | /* #define DEBUG */
44 |
45 | /*
46 | * The initialization function.
47 | */
48 |
49 | void ca_init(const char *configFile)
50 | /****************************************************************
51 | * ca_init() -- Initialisation function; *
52 | * - a wrapper for the ca_populateDictionary,` *
53 | * the ca_readConfig and the ca_readSources *
54 | * functions. *
55 | * *
56 | * Parameters *
57 | * configFile -- the name of the configuration file *
58 | * *
59 | * Returns *
60 | * Nothing -- perhaps make this return 0 on successful *
61 | * completion ? *
62 | * *
63 | ****************************************************************/
64 | {
65 | /*
66 | * We use CA_NUMBEROFSYMBOLS instead.
67 | * int varNo = VARS;
68 | */
69 |
70 | int varNo = CA_NUMBEROFSYMBOLS;
71 |
72 | /*
73 | * We do not need this function now; the dictionary is hardcoded.
74 | *
75 | * ca_populateDictionary(dictionary, varNo);
76 | */
77 |
78 | #ifdef DEBUG
79 | ca_getDictionary(dictionary, varNo);
80 | #endif /* DEBUG */
81 |
82 | ca_readConfig(configFile, confVars, varNo);
83 | /*
84 | * ca_sanityChk(confVars);
85 | */
86 | if (ca_mandVarChk() != 0)
87 | {
88 | fprintf(stderr, "Mandatory variable(s) undefined\n\n");
89 | fprintf(stderr, "<<<<<<<<<<<<<<< >>>>>>>>>>>\n\n");
90 | }
91 |
92 | /*
93 | * sourcesFile = ca_get_dirlist(94);
94 | */
95 | sourcesFile = ca_get_dirlist(CA_SOURCEFILE);
96 | ca_readSources(sourcesFile, confVars);
97 | }