Subject: pkg/35097: net/mrt fixes for gcc4
To: None <pkg-manager@netbsd.org, gnats-admin@netbsd.org,>
From: None <heas@shrubbery.net>
List: pkgsrc-bugs
Date: 11/23/2006 00:00:00
>Number:         35097
>Category:       pkg
>Synopsis:       net/mrt fixes for gcc4
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    pkg-manager
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Thu Nov 23 00:00:00 +0000 2006
>Originator:     god
>Release:        NetBSD 4.99.4
>Organization:
	
>Environment:
	
	
System: NetBSD roome 4.99.4 NetBSD 4.99.4 (roome) #9: Mon Nov 20 00:54:20 UTC 2006 root@roome:/sys/arch/i386/compile/roome i386
Architecture: i386
Machine: i386
>Description:
net/mrt does not build with new gcc4.
>How-To-Repeat:
	
>Fix:
The following fix the build.  Untested.

$NetBSD$

--- lib/mrt/route_util.c.orig	2000-05-23 07:57:54.000000000 +0000
+++ lib/mrt/route_util.c
@@ -68,7 +68,7 @@ proto2string (int proto)
 char *s_origins[] = {"IGP", "EGP", "INCOMPLETE", "AGGREGATE"};
 char c_origins[] = {'i', 'e', '?', 'a'};
 const char *origin2string (int origin) { return (s_origins[origin]); }
-const int origin2char (int origin) { return (c_origins[origin]); }
+int origin2char (int origin) { return (c_origins[origin]); }
 
 
 static char *

$NetBSD$

--- include/mrt.h.orig	2000-05-23 08:02:12.000000000 +0000
+++ include/mrt.h
@@ -726,7 +726,7 @@ int gen_hash_fn (prefix_t * prefix, int 
 int gen_lookup_fn (prefix_t * a, prefix_t * b);
 
 const char *origin2string (int origin);
-const int origin2char (int origin);
+int origin2char (int origin);
 char *bgptype2string (int type);
 int string2bgptype (char **str);
 char *proto2string (int proto);

$NetBSD$

--- include/rib.h.orig	2000-05-23 08:02:15.000000000 +0000
+++ include/rib.h
@@ -167,9 +167,8 @@ int trace_ipv6_rib (uii_connection_t *ui
 #endif /* HAVE_IPV6 */
 
 extern rib_t *RIB;
-extern rib_t *RIBS[AFI_MAX][SAFI_MAX];
-extern rib_t *RIBm;
-extern rib_t *RIBv6;
+extern rib_t *RIBm;  
+extern rib_t *RIBv6; 
 extern rib_t *RIBv6m;
 #ifdef HAVE_IPV6
 int show_ipv6_routes (uii_connection_t * uii, char *cmd);

$NetBSD$

--- lib/config/commconf.c.orig	2000-05-23 07:53:10.000000000 +0000
+++ lib/config/commconf.c
@@ -365,7 +365,7 @@ config_interface (uii_connection_t * uii
     uii->state = UII_CONFIG_INTERFACE;
     Delete (name);
 
-    LL_Iterate (CONFIG_MRTD->ll_interfaces, (char *) ip) {
+    LL_Iterate (CONFIG_MRTD->ll_interfaces, ip) {
 	if (ip == interface)
 	    return (0);
     }

>Unformatted: