diff -Naur net-snmp-5.1.1-orig/include/net-snmp/library/parse.h net-snmp-5.1.1/include/net-snmp/library/parse.h
--- net-snmp-5.1.1-orig/include/net-snmp/library/parse.h	2003-05-08 12:34:25.000000000 -0400
+++ net-snmp-5.1.1/include/net-snmp/library/parse.h	2004-06-03 17:05:27.000000000 -0400
@@ -220,6 +220,7 @@
     void            print_subtree(FILE *, struct tree *, int);
     void            print_ascii_dump_tree(FILE *, struct tree *, int);
     struct tree    *find_tree_node(const char *, int);
+	int 			get_tc_index(const char *, int);
     const char     *get_tc_descriptor(int);
     struct tree    *find_best_tree_node(const char *, struct tree *,
                                         u_int *);
diff -Naur net-snmp-5.1.1-orig/snmplib/parse.c net-snmp-5.1.1/snmplib/parse.c
--- net-snmp-5.1.1-orig/snmplib/parse.c	2004-02-17 10:28:15.000000000 -0500
+++ net-snmp-5.1.1/snmplib/parse.c	2004-06-03 17:04:01.000000000 -0400
@@ -528,7 +528,7 @@
 struct tree    *tree_head = NULL;
 
 #define	NUMBER_OF_ROOT_NODES	3
-static struct module_import root_imports[NUMBER_OF_ROOT_NODES];
+struct module_import root_imports[NUMBER_OF_ROOT_NODES];
 
 static int      current_module = 0;
 static int      max_module = 0;
@@ -556,7 +556,6 @@
 static struct node *parse_objectid(FILE *, char *);
 static int      get_tc(const char *, int, int *, struct enum_list **,
                        struct range_list **, char **);
-static int      get_tc_index(const char *, int);
 static struct enum_list *parse_enumlist(FILE *, struct enum_list **);
 static struct range_list *parse_ranges(FILE * fp, struct range_list **);
 static struct node *parse_asntype(FILE *, char *, int *, char *);
@@ -2008,7 +2007,7 @@
  * return index into tclist of given TC descriptor
  * return -1 if not found
  */
-static int
+int
 get_tc_index(const char *descriptor, int modid)
 {
     int             i;
