1    | /***************************************
2    |   $Revision: 1.3 $
3    | 
4    |   Status: NOT REVUED, NOT TESTED
5    | 
6    |  Author(s):       Andrei Robachevsky
7    | 
8    |   ******************/ /******************
9    |   Modification History:
10   |         andrei (17/01/2000) Created.
11   |   ******************/ /******************
12   |   Copyright (c) 2000                              RIPE NCC
13   |  
14   |   All Rights Reserved
15   |   
16   |   Permission to use, copy, modify, and distribute this software and its
17   |   documentation for any purpose and without fee is hereby granted,
18   |   provided that the above copyright notice appear in all copies and that
19   |   both that copyright notice and this permission notice appear in
20   |   supporting documentation, and that the name of the author not be
21   |   used in advertising or publicity pertaining to distribution of the
22   |   software without specific, written prior permission.
23   |   
24   |   THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
25   |   ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS; IN NO EVENT SHALL
26   |   AUTHOR BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY
27   |   DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN
28   |   AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
29   |   OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
30   |  ***************************************/
31   | 
32   | #define TAB_START	7
33   | char *t_ab[]={  "as_block","mntner","person_role","names",NULL,NULL,NULL,
34   |                 "admin_c","tech_c","notify","mnt_by","mnt_lower",NULL };
35   |                 
36   | char *t_an[]={	"aut_num","mntner","person_role","as_set","names","mbrs_by_ref",NULL,
37   | 		"cross_nfy","cross_mnt","member_of","admin_c","tech_c","notify","mnt_by","mnt_lower","mnt_routes",NULL };
38   | 		
39   | char *t_dn[]={	"domain","mntner","person_role","names",NULL,NULL,NULL,
40   | 		"admin_c","tech_c","zone_c","nserver","sub_dom","notify","mnt_by","mnt_lower","refer",NULL }; //C_DN,
41   | 		
42   | char *t_i6[]={	NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL}; //C_I6,
43   | 
44   | char *t_in[]={	"inetnum","mntner","person_role","names",NULL,NULL,NULL,
45   | 		"admin_c","tech_c","rev_srv","notify","mnt_by","mnt_lower","mnt_routes",NULL}; //C_IN,
46   | 		
47   | char *t_ir[]={	NULL/*"inet_rtr"*/, "mntner","person_role","names",NULL,NULL,NULL,
48   | 		"ifaddr","admin_c","tech_c","notify","mnt_by",NULL}; //C_IR,
49   | 		
50   | char *t_kc[]={	"key_cert","mntner",NULL,NULL,NULL,NULL,NULL,
51   | 		"notify","mnt_by",NULL}; //C_KC,
52   | 		
53   | char *t_li[]={	"limerick","mntner","person_role","names",NULL,NULL,NULL,
54   | 		"admin_c","author","notify","mnt_by",NULL}; //C_LI,
55   | 		
56   | char *t_mt[]={	"mntner","person_role","names",NULL,NULL,NULL,NULL,
57   | 		"admin_c","tech_c","upd_to","mnt_nfy","auth","notify","mnt_by","auth_override",NULL}; //C_MT,
58   | 		
59   | char *t_pn[]={	"person_role","mntner",NULL,NULL,NULL,NULL,NULL,
60   | 		"names","e_mail","notify","mnt_by",NULL}; //C_PN,
61   | 		
62   | char *t_ro[]={	"person_role","mntner",NULL,NULL,NULL,NULL,NULL,
63   | 		"names","e_mail","admin_c","tech_c","notify","mnt_by",NULL}; //C_RO,
64   | 		
65   | char *t_rt[]={	"route","route_set","mntner","mbrs_by_ref",NULL,NULL,NULL,
66   | 		"cross_nfy","cross_mnt","member_of","notify","mnt_by","mnt_lower", "mnt_routes", NULL}; //C_RT,
67   | 		
68   | char *t_as[]={	"as_set","mntner","person_role","names",NULL,NULL,NULL,
69   | 		"mbrs_by_ref","admin_c","tech_c","notify","mnt_by",NULL}; //C_AS,
70   | 		
71   | char *t_rs[]={	"route_set","mntner","person_role","names",NULL,NULL,NULL,
72   | 		"mbrs_by_ref","admin_c","tech_c","notify","mnt_by",NULL}; //C_RS,
73   | 
74   | /* IMPORTANT !!! */
75   | /* This stuff should be consistent with DF_classnames.def */
76   | 
77   | char **tables[]={
78   | t_ab,// replace with as_block later
79   | t_as,
80   | t_an,
81   | t_dn,
82   | t_ir,
83   | t_i6,
84   | t_in,
85   | t_kc,
86   | t_li,
87   | t_mt,
88   | t_pn,
89   | t_ro,
90   | t_rt,
91   | t_rs,
92   | NULL
93   | };
94   | 
95   | /* This tables are used for inverse querying when deleting an object */
96   | 
97   | char *t_ipn[]={  "admin_c","tech_c","zone_c","cross_nfy","author",NULL}; //C_PN, C_RO
98   | char *t_imt[]={  "mnt_by","mnt_lower","mnt_routes","cross_mnt","mbrs_by_ref",NULL}; // C_MT