1    | /***************************************
2    |   $Revision: 1.7 $
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	6
33   | char *t_ab[]={  "mntner","person_role","names",NULL,NULL,NULL,
34   |                 "admin_c","tech_c","notify","mnt_by","mnt_lower",NULL };
35   |                 
36   | char *t_an[]={	"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[]={	"mntner","person_role","names",NULL,NULL,NULL,
40   | 		"admin_c","tech_c","zone_c","nserver","sub_dom","notify","mnt_by","mnt_lower","refer","inaddr_arpa", NULL }; /*C_DN, */
41   | 		
42   | char *t_i6[]={	"mntner","person_role","names",NULL,NULL,NULL,
43   | 		"admin_c","tech_c","rev_srv","notify","mnt_by","mnt_lower","mnt_routes",NULL}; /*C_I6,*/
44   | 
45   | char *t_in[]={	"mntner","person_role","names",NULL,NULL,NULL,
46   | 		"admin_c","tech_c","rev_srv","notify","mnt_by","mnt_lower","mnt_routes",NULL}; /*C_IN,*/
47   | 		
48   | char *t_ir[]={	"mntner","person_role","names",NULL,NULL,NULL,
49   | 		"ifaddr","admin_c","tech_c","notify","mnt_by",NULL}; /*C_IR,*/
50   | 		
51   | char *t_kc[]={	"mntner",NULL,NULL,NULL,NULL,NULL,
52   | 		"notify","mnt_by",NULL}; /*C_KC,*/
53   | 		
54   | char *t_li[]={	"mntner","person_role","names",NULL,NULL,NULL,
55   | 		"admin_c","author","notify","mnt_by",NULL}; /*C_LI,*/
56   | 		
57   | char *t_mt[]={	"person_role","names",NULL,NULL,NULL,NULL,
58   | 		"admin_c","tech_c","upd_to","mnt_nfy","auth","notify","mnt_by","auth_override",NULL}; /*C_MT,*/
59   | 		
60   | char *t_pn[]={	"mntner",NULL,NULL,NULL,NULL,NULL,
61   | 		"names","e_mail","notify","mnt_by",NULL}; /*C_PN,*/
62   | 		
63   | char *t_ro[]={	"mntner",NULL,NULL,NULL,NULL,NULL,
64   | 		"names","e_mail","admin_c","tech_c","notify","mnt_by",NULL}; /**C_RO,*/
65   | 		
66   | char *t_rt[]={	"route_set","mntner","mbrs_by_ref",NULL,NULL,NULL,
67   | 		"cross_nfy","cross_mnt","member_of","notify","mnt_by","mnt_lower", "mnt_routes", NULL}; /*C_RT,*/
68   | 		
69   | char *t_as[]={	"mntner","person_role","names",NULL,NULL,NULL,
70   | 		"mbrs_by_ref","admin_c","tech_c","notify","mnt_by",NULL}; /*C_AS,*/
71   | 		
72   | char *t_rs[]={	"mntner","person_role","names",NULL,NULL,NULL,
73   | 		"mbrs_by_ref","admin_c","tech_c","notify","mnt_by",NULL}; /*C_RS,*/
74   | 		
75   | char *t_fs[]={  "mntner","person_role","names",NULL,NULL,NULL,
76   |                 "admin_c","tech_c","notify","mnt_by",NULL,NULL}; /*C_FS,*/
77   |                 
78   | char *t_ps[]={  "mntner","person_role","names",NULL,NULL,NULL,
79   |                 "admin_c","tech_c","notify","mnt_by",NULL,NULL}; /*C_PS,*/
80   |                 
81   | char *t_is[]={  "mntner","person_role","names",NULL,NULL,NULL,
82   |                 "mbrs_by_ref","admin_c","tech_c","notify","mnt_by",NULL}; /*C_IS,*/
83   |                 
84   | 
85   | /* IMPORTANT !!! */
86   | /* This stuff should be consistent with DF_classnames.def */
87   | 
88   | char **tables[]={
89   | t_ab,
90   | t_as,
91   | t_an,
92   | t_dn,
93   | t_ir,
94   | t_i6,
95   | t_in,
96   | t_kc,
97   | t_li,
98   | t_mt,
99   | t_pn,
100  | t_ro,
101  | t_rt,
102  | t_rs,
103  | t_fs,
104  | t_ps,
105  | t_is,
106  | NULL
107  | };
108  | 
109  | /* This tables are used for inverse querying when deleting an object */
110  | 
111  | char *t_ipn[]={  "admin_c","tech_c","zone_c","cross_nfy","author",NULL}; /*C_PN, C_RO*/
112  | char *t_imt[]={  "mnt_by","mnt_lower","mnt_routes","cross_mnt","mbrs_by_ref",NULL}; /* C_MT */