Source File modules/ca/ca_values.c

    1    | /***************************************
    2    |   $Revision:
    3    |
    4    |   CA module: Values defined at compile time.
    5    |
    6    |   Status: NOT REVIEWED, NOT TESTED
    7    |
    8    |   Author(s):       Ambrose Magee
    9    |
    10   | ******************//******************
    11   | Modification History:
    12   |
    13   | ******************/
    14   |
    15   | /************************************
    16   | Copyright (c) 2000                              RIPE NCC
    17   |
    18   | All Rights Reserved
    19   |
    20   | Permission to use, copy, modify, and distribute this software and its
    21   | documentation for any purpose and without fee is hereby granted,
    22   | provided that the above copyright notice appear in all copies and that
    23   | both that copyright notice and this permission notice appear in
    24   | supporting documentation, and that the name of the author not be
    25   | used in advertising or publicity pertaining to distribution of the
    26   | software without specific, written prior permission.
    27   |
    28   | THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
    29   | ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS; IN NO EVENT SHALL
    30   | AUTHOR BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY
    31   | DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN
    32   | AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
    33   | OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
    34   | ***************************************/
    35   |
    36   |
    37   | #include "ca_defs.h"
    38   |
    39   | /*
    40   |  * int bport = 43;
    41   |  */
    42   |
    43   | GSList *sourceList = NULL;
    44   |
    45   | GSList *dbList = NULL;
    46   |
    47   | GSList *nrtmList = NULL;
    48   |
    49   | /*
    50   |  * 20000609 Experiment: The GSList variable, "mySrcList", is defined in the
    51   |  * ca_defs.h file (with an 'extern' modifier). GSList *mySrcList = NULL;
    52   |  */
    53   |
    54   | /*
    55   |  * int testmode = 0;
    56   |  */
    57   |
    58   | /*
    59   |  * values_t globals[]  =  { {"43", &bport}, {"/ncc/db2/doc/HELP",
    60   |  * "/ncc/db2/doc/HELP"}, {"% Rights restricted by copyright. See
    61   |  * http://www.ripe.net/db/dbcopyright.html", "% Rights restricted by
    62   |  * copyright. See http://www.ripe.net/db/dbcopyright.html"}, {"SourceList",
    63   |  * NULL}, {"0", &testmode}, {"1Bt9RNSMWcA.Y", "1Bt9RNSMWcA.Y"},
    64   |  * {"/ncc/db2/doc/WHOIS-HELP", "/ncc/db2/doc/WHOIS-HELP"},
    65   |  * {"/ncc/db2/doc/AUTO-DBM-HELP", "/ncc/db2/doc/AUTO-DBM-HELP"},
    66   |  * {"/ncc/db2/etc/attr-desc.config", "/ncc/db2/etc/attr-desc.config"},
    67   |  * {"RIPE", "RIPE"}, {"RIPE          /ncc/db2/data/ripe/ripe.db SPLIT", "RIPE
    68   |  * /ncc/db2/data/ripe/ripe.db         SPLIT"}, {"RIPE", "RIPE"},
    69   |  * {"SourceList", NULL}, {"dbase", "dbase"}, {"/ncc/db2/log/qry/qrylog",
    70   |  * "/ncc/db2/log/qry/qrylog"}, {"/ncc/db2/log/qry/qry2log",
    71   |  * "/ncc/db2/log/qry/qry2log"}, {"/ncc/db2/log/err/errlog",
    72   |  * "/ncc/db2/log/err/errlog"}, {"/ncc/db2/log/audit/auditlog",
    73   |  * "/ncc/db2/log/audit/auditlog"}, {"/ncc/db2/log/upd", "/ncc/db2/log/upd"},
    74   |  * {"/ncc/db2/log/ack", "/ncc/db2/log/ack"}, {"/ncc/db2/locks",
    75   |  * "/ncc/db2/locks"}, {"whoisd.pid", "whoisd.pid"}, {"STOPUPDATES",
    76   |  * "STOPUPDATES"}, {"CLEANDB.LOCK", "CLEANDB.LOCK"},
    77   |  * {"/ncc/db2/serials/current", "/ncc/db2/serials/current"},
    78   |  * {"/ncc/db2/serials/old", "/ncc/db2/serials/old"},
    79   |  * {"/ncc/db2/serials/incoming", "/ncc/db2/serials/incoming"}, {"180",
    80   |  * "180"}, {"RIPE-NCC-HM-MNT ", "RIPE-NCC-HM-MNT "}, {"127.0.0.1",
    81   |  * "127.0.0.1"}, {"193.0.0.1[345678][0-9]", "193.0.0.1[345678][0-9]"},
    82   |  * {"195.88.156.1", "195.88.156.1"}, {"/ncc/db2/tmp", "/ncc/db2/tmp"},
    83   |  * {"/usr/local/bin/pgpv", "/usr/local/bin/pgpv"}, {"/usr/local/bin/pgpk",
    84   |  * "/usr/local/bin/pgpk"}, {"/ncc/db2/.pgp", "/ncc/db2/.pgp"},
    85   |  * {"/var/qmail/bin/qmail-inject -fripe-dbm", "/var/qmail/bin/qmail-inject
    86   |  * -fripe-dbm"}, {"8096", "8096"}, {"2097152", "2097152"}, {"2", "2"},
    87   |  * {"ripe-dbm@ripe.net", "ripe-dbm@ripe.net"}, {"ripe-dbm@ripe.net",
    88   |  * "ripe-dbm@ripe.net"}, {"auto-dbm@ripe.net", "auto-dbm@ripe.net"},
    89   |  * {"nostrict", "nostrict"}, {"% No entries found for the selected
    90   |  * source(s).", "% No entries found for the selected source(s)."}, {"Subject:
    91   |  * RIPE RR: Addition of overlapping routes", "Subject: RIPE RR: Addition of
    92   |  * overlapping routes"}, {"Subject: RIPE RR: Removal  of overlapping routes",
    93   |  * "Subject: RIPE RR: Removal  of overlapping routes"}, {"The addition of
    94   |  * your route object ... ", "The addition of your route object ... "}, {"The
    95   |  * deletion of your route object ... ", "The deletion of your route object
    96   |  * ... "}, {"created new overlaps with the following routes ...", "created
    97   |  * new overlaps with the following routes ..."}, {"removed the overlaps with
    98   |  * the following routes ...", "removed the overlaps with the following routes
    99   |  * ..."}, {"Subject: RIPE RR: Addition of overlapping routes", "Subject: RIPE
    100  |  * RR: Addition of overlapping routes"}, {"Subject: RIPE RR: Removal  of
    101  |  * overlapping routes", "Subject: RIPE RR: Removal  of overlapping routes"},
    102  |  * {"The addition of the route object ... ", "The addition of the route
    103  |  * object ... "}, {"The deletion of the route object ... ", "The deletion of
    104  |  * the route object ... "}, {"created new overlaps with your following routes
    105  |  * ...", "created new overlaps with your following routes ..."}, {"removed
    106  |  * the overlaps with your following routes ...", "removed the overlaps with
    107  |  * your following routes ..."}, {"Your e-mail:", "Your e-mail:"}, {"From:
    108  |  * RIPE Database Management <$HUMAILBOX>", "From: RIPE Database Management
    109  |  * <$HUMAILBOX>"}, {"From: RIPE Database Management <$HUMAILBOX>", "From:
    110  |  * RIPE Database Management <$HUMAILBOX>"}, {"Subject: SUCCEEDED: $SUBJECT",
    111  |  * "Subject: SUCCEEDED: $SUBJECT"}, {"Help file requested so body of message
    112  |  * ignored.", "Help file requested so body of message ignored."}, {"Objects
    113  |  * that just generated a WARNING have been updated as shown.", "Objects that
    114  |  * just generated a WARNING have been updated as shown."}, {"No errors were
    115  |  * found in your database update.  Congratulations.", "No errors were found
    116  |  * in your database update.  Congratulations."}, {"RIPE Database Maintenance
    117  |  * Department (Automatic Section)", "RIPE Database Maintenance Department
    118  |  * (Automatic Section)"}, {"This is to notify you that some object(s) in the
    119  |  * RIPE database", "This is to notify you that some object(s) in the RIPE
    120  |  * database"}, {"The update causing these changes had the following mail
    121  |  * headers:", "The update causing these changes had the following mail
    122  |  * headers:"}, {"The update causing these changes came from the following
    123  |  * host:", "The update causing these changes came from the following host:"},
    124  |  * {"From: RIPE Database Notifications <$HUMAILBOX>", "From: RIPE Database
    125  |  * Notifications <$HUMAILBOX>"}, {"From: RIPE Database Maintainer Forwarding
    126  |  * <$HUMAILBOX>", "From: RIPE Database Maintainer Forwarding <$HUMAILBOX>"},
    127  |  * {"This is to notify you that some objects in which you are mentioned as",
    128  |  * "This is to notify you that some objects in which you are mentioned as"},
    129  |  * {"The mail message causing these failures had the following mail
    130  |  * headers:", "The mail message causing these failures had the following mail
    131  |  * headers:"}, {"The update causing these failures came from the following
    132  |  * host:", "The update causing these failures came from the following
    133  |  * host:"}, {"From: RIPE Database Maintainer Creation <$HUMAILBOX>", "From:
    134  |  * RIPE Database Maintainer Creation <$HUMAILBOX>"}, {"A maintainer object is
    135  |  * requested by:", "A maintainer object is requested by:"}, {"* A C C E S S D
    136  |  * E N I E D *", "* A C C E S S    D E N I E D *"}, {"The object shown below
    137  |  * is NOT in the RIPE database.", "The object shown below is NOT in the RIPE
    138  |  * database."}, {"Referred query to host $REFERHOST at port $REFERPORT",
    139  |  * "Referred query to host $REFERHOST at port $REFERPORT"}, {"Referral loop
    140  |  * detected when querying ", "Referral loop detected when querying "},
    141  |  * {"Referred query to host $REFERHOST at port $REFERPORT", "Referred query
    142  |  * to host $REFERHOST at port $REFERPORT"}, {"Result TRUNCATED. Answer lenght
    143  |  * exceeded limit.", "Result TRUNCATED. Answer lenght exceeded limit."},
    144  |  * {"%%% End of referred query result", "%%% End of referred query result"},
    145  |  * {"10", "10"}, {"2000", "2000"}, {"Copyright
    146  |  * (c)1992/1993/1994/1995/1996/1997/1998/1999 by RIPE NCC ", "Copyright
    147  |  * (c)1992/1993/1994/1995/1996/1997/1998/1999 by RIPE NCC "}, {"IE ie", "IE
    148  |  * ie"} }; values_t locals[]  =  { {"43", &bport}, {"/ncc/db2/doc/HELP",
    149  |  * "/ncc/db2/doc/HELP"}, {"% Rights restricted by copyright. See
    150  |  * http://www.ripe.net/db/dbcopyright.html", "% Rights restricted by
    151  |  * copyright. See http://www.ripe.net/db/dbcopyright.html"}, {"SourceList",
    152  |  * NULL}, {"0", &testmode}, {"1Bt9RNSMWcA.Y", "1Bt9RNSMWcA.Y"},
    153  |  * {"/ncc/db2/doc/WHOIS-HELP", "/ncc/db2/doc/WHOIS-HELP"},
    154  |  * {"/ncc/db2/doc/AUTO-DBM-HELP", "/ncc/db2/doc/AUTO-DBM-HELP"},
    155  |  * {"/ncc/db2/etc/attr-desc.config", "/ncc/db2/etc/attr-desc.config"},
    156  |  * {"RIPE", "RIPE"}, {"RIPE          /ncc/db2/data/ripe/ripe.db SPLIT", "RIPE
    157  |  * /ncc/db2/data/ripe/ripe.db         SPLIT"}, {"RIPE", "RIPE"},
    158  |  * {"SourceList", NULL}, {"dbase", "dbase"}, {"/ncc/db2/log/qry/qrylog",
    159  |  * "/ncc/db2/log/qry/qrylog"}, {"/ncc/db2/log/qry/qry2log",
    160  |  * "/ncc/db2/log/qry/qry2log"}, {"/ncc/db2/log/err/errlog",
    161  |  * "/ncc/db2/log/err/errlog"}, {"/ncc/db2/log/audit/auditlog",
    162  |  * "/ncc/db2/log/audit/auditlog"}, {"/ncc/db2/log/upd", "/ncc/db2/log/upd"},
    163  |  * {"/ncc/db2/log/ack", "/ncc/db2/log/ack"}, {"/ncc/db2/locks",
    164  |  * "/ncc/db2/locks"}, {"whoisd.pid", "whoisd.pid"}, {"STOPUPDATES",
    165  |  * "STOPUPDATES"}, {"CLEANDB.LOCK", "CLEANDB.LOCK"},
    166  |  * {"/ncc/db2/serials/current", "/ncc/db2/serials/current"},
    167  |  * {"/ncc/db2/serials/old", "/ncc/db2/serials/old"},
    168  |  * {"/ncc/db2/serials/incoming", "/ncc/db2/serials/incoming"}, {"180",
    169  |  * "180"}, {"RIPE-NCC-HM-MNT ", "RIPE-NCC-HM-MNT "}, {"127.0.0.1",
    170  |  * "127.0.0.1"}, {"193.0.0.1[345678][0-9]", "193.0.0.1[345678][0-9]"},
    171  |  * {"195.88.156.1", "195.88.156.1"}, {"/ncc/db2/tmp", "/ncc/db2/tmp"},
    172  |  * {"/usr/local/bin/pgpv", "/usr/local/bin/pgpv"}, {"/usr/local/bin/pgpk",
    173  |  * "/usr/local/bin/pgpk"}, {"/ncc/db2/.pgp", "/ncc/db2/.pgp"},
    174  |  * {"/var/qmail/bin/qmail-inject -fripe-dbm", "/var/qmail/bin/qmail-inject
    175  |  * -fripe-dbm"}, {"8096", "8096"}, {"2097152", "2097152"}, {"2", "2"},
    176  |  * {"ripe-dbm@ripe.net", "ripe-dbm@ripe.net"}, {"ripe-dbm@ripe.net",
    177  |  * "ripe-dbm@ripe.net"}, {"auto-dbm@ripe.net", "auto-dbm@ripe.net"},
    178  |  * {"nostrict", "nostrict"}, {"% No entries found for the selected
    179  |  * source(s).", "% No entries found for the selected source(s)."}, {"Subject:
    180  |  * RIPE RR: Addition of overlapping routes", "Subject: RIPE RR: Addition of
    181  |  * overlapping routes"}, {"Subject: RIPE RR: Removal  of overlapping routes",
    182  |  * "Subject: RIPE RR: Removal  of overlapping routes"}, {"The addition of
    183  |  * your route object ... ", "The addition of your route object ... "}, {"The
    184  |  * deletion of your route object ... ", "The deletion of your route object
    185  |  * ... "}, {"created new overlaps with the following routes ...", "created
    186  |  * new overlaps with the following routes ..."}, {"removed the overlaps with
    187  |  * the following routes ...", "removed the overlaps with the following routes
    188  |  * ..."}, {"Subject: RIPE RR: Addition of overlapping routes", "Subject: RIPE
    189  |  * RR: Addition of overlapping routes"}, {"Subject: RIPE RR: Removal  of
    190  |  * overlapping routes", "Subject: RIPE RR: Removal  of overlapping routes"},
    191  |  * {"The addition of the route object ... ", "The addition of the route
    192  |  * object ... "}, {"The deletion of the route object ... ", "The deletion of
    193  |  * the route object ... "}, {"created new overlaps with your following routes
    194  |  * ...", "created new overlaps with your following routes ..."}, {"removed
    195  |  * the overlaps with your following routes ...", "removed the overlaps with
    196  |  * your following routes ..."}, {"Your e-mail:", "Your e-mail:"}, {"From:
    197  |  * RIPE Database Management <$HUMAILBOX>", "From: RIPE Database Management
    198  |  * <$HUMAILBOX>"}, {"From: RIPE Database Management <$HUMAILBOX>", "From:
    199  |  * RIPE Database Management <$HUMAILBOX>"}, {"Subject: SUCCEEDED: $SUBJECT",
    200  |  * "Subject: SUCCEEDED: $SUBJECT"}, {"Help file requested so body of message
    201  |  * ignored.", "Help file requested so body of message ignored."}, {"Objects
    202  |  * that just generated a WARNING have been updated as shown.", "Objects that
    203  |  * just generated a WARNING have been updated as shown."}, {"No errors were
    204  |  * found in your database update.  Congratulations.", "No errors were found
    205  |  * in your database update.  Congratulations."}, {"RIPE Database Maintenance
    206  |  * Department (Automatic Section)", "RIPE Database Maintenance Department
    207  |  * (Automatic Section)"}, {"This is to notify you that some object(s) in the
    208  |  * RIPE database", "This is to notify you that some object(s) in the RIPE
    209  |  * database"}, {"The update causing these changes had the following mail
    210  |  * headers:", "The update causing these changes had the following mail
    211  |  * headers:"}, {"The update causing these changes came from the following
    212  |  * host:", "The update causing these changes came from the following host:"},
    213  |  * {"From: RIPE Database Notifications <$HUMAILBOX>", "From: RIPE Database
    214  |  * Notifications <$HUMAILBOX>"}, {"From: RIPE Database Maintainer Forwarding
    215  |  * <$HUMAILBOX>", "From: RIPE Database Maintainer Forwarding <$HUMAILBOX>"},
    216  |  * {"This is to notify you that some objects in which you are mentioned as",
    217  |  * "This is to notify you that some objects in which you are mentioned as"},
    218  |  * {"The mail message causing these failures had the following mail
    219  |  * headers:", "The mail message causing these failures had the following mail
    220  |  * headers:"}, {"The update causing these failures came from the following
    221  |  * host:", "The update causing these failures came from the following
    222  |  * host:"}, {"From: RIPE Database Maintainer Creation <$HUMAILBOX>", "From:
    223  |  * RIPE Database Maintainer Creation <$HUMAILBOX>"}, {"A maintainer object is
    224  |  * requested by:", "A maintainer object is requested by:"}, {"* A C C E S S D
    225  |  * E N I E D *", "* A C C E S S    D E N I E D *"}, {"The object shown below
    226  |  * is NOT in the RIPE database.", "The object shown below is NOT in the RIPE
    227  |  * database."}, {"Referred query to host $REFERHOST at port $REFERPORT",
    228  |  * "Referred query to host $REFERHOST at port $REFERPORT"}, {"Referral loop
    229  |  * detected when querying ", "Referral loop detected when querying "},
    230  |  * {"Referred query to host $REFERHOST at port $REFERPORT", "Referred query
    231  |  * to host $REFERHOST at port $REFERPORT"}, {"Result TRUNCATED. Answer lenght
    232  |  * exceeded limit.", "Result TRUNCATED. Answer lenght exceeded limit."},
    233  |  * {"%%% End of referred query result", "%%% End of referred query result"},
    234  |  * {"10", "10"}, {"2000", "2000"}, {"Copyright
    235  |  * (c)1992/1993/1994/1995/1996/1997/1998/1999 by RIPE NCC ", "Copyright
    236  |  * (c)1992/1993/1994/1995/1996/1997/1998/1999 by RIPE NCC "}, {"IE ie", "IE
    237  |  * ie"} };
    238  |  */
    239  |
    240  | /*
    241  |  * ca_database_t ripe    =   { "rowan.ripe.net", "4343", "Idiot", "scramble",
    242  |  * "RIPE6" };
    243  |  *
    244  |  * ca_database_t arin    = {
    245  |  *
    246  |  * "rowan", "2005", "dbint", "passwrd", "ARIN2" };
    247  |  */
    248  |
    249  | /*
    250  |  * ca_database_t radb    = { "rowan", "default", "default", "default",
    251  |  * "RADB1" };
    252  |  */
    253  |
    254  | /*
    255  |  * ca_database_t radb = { ca_defHost, ca_defPort, ca_defUser, ca_defPassword,
    256  |  * "RADB1"  };
    257  |  */
    258  |
    259  | /*
    260  |  * ca_database_t radb = { CA_DEFHOST, CA_DEFPORT, CA_DEFUSER, CA_DEFPASSWORD,
    261  |  * "RADB1"  };
    262  |  *
    263  |  * ca_database_list_t ripeComponent = { "RIPE",  { "rowan.ripe.net", "4343",
    264  |  * "Idiot", "scramble", "RIPE6" } };
    265  |  *
    266  |  * ca_database_list_t arinComponent = { "ARIN", { "rowan", "2005", "dbint",
    267  |  * "passwd", "ARIN2" } };
    268  |  */
    269  |
    270  | /*
    271  |  * char ca_defHost[64] = "rowan"; char ca_defPort[16] = "43"; char
    272  |  * ca_defUser[16] = "dbase"; char ca_defPassword[9] = "encrypt1"; char
    273  |  * ca_defdbName[16] = "default-db";
    274  |  */
    275  |
    276  | /*
    277  |  * ca_database_list_t radbComponent = { "RADB", { CA_DEFHOST, CA_DEFPORT,
    278  |  * CA_DEFUSER, CA_DEFPASSWORD, "RADB1" } };
    279  |  */
    280  |
    281  | /*
    282  |  * The test configuration file.
    283  |  */
    284  | const char *testFile = "test.config";
    285  | const char *tempFile = "temp.config";
    286  | const char *dictFile = "dictionary.txt";
    287  | const char *confFile = "rip.config";
    288  |
    289  | /*
    290  |  * const char *confFile = "./dbupdate.conf";
    291  |  */
    292  | const char *sourcesFile = "sources.config";
    293  |
    294  | values_t confVars[VARS];
    295  | values_t globals[VARS];
    296  | values_t locals[VARS];
    297  |
    298  | /*
    299  |  * We do not need this now; the dictionary is hardcoded.
    300  |  * dict_t dictionary[VARS];
    301  |  */
    302  |
    303  | ca_dbSource_t *theSrc;
    304  |
    305  | const char *configWarningStr = "Warning: undefined configuration variable:";
    306  | const char *configError_1Str = "Error: Incomplete configuration file.  Was this intended ???\n";
    307  | const char *configError_2Str = " configuration variables undefined.\n";
    308  |