Subject: Re: Another problem with 1.2G 970629
To: None <current-users@NetBSD.ORG>
From: Christos Zoulas <christos@nyc.deshaw.com>
List: current-users
Date: 07/05/1997 22:40:57
In article <199707050708.AAA01715@starwolf.com> greywolf@starwolf.com writes:
>No, I hadn't done that.
>
>It was failing with (from /var/log/messages):
>
>Jul  1 23:40:21 starwolf pppd[530]: pppd 2.3.0b5 started by root, uid 0
>Jul  1 23:40:21 starwolf routed[156]: Send sendto(ppp0, 207.33.232.1.520): Network is down
>Jul  1 23:40:21 starwolf pppd[530]: local  IP address 207.33.232.91
>Jul  1 23:40:21 starwolf pppd[530]: remote IP address 207.33.232.1
>Jul  1 23:40:55 starwolf pppd[530]: Connect: ppp0 <--> /dev/ttya
>Jul  1 23:42:36 starwolf routed[156]: static route 0.0.0.0 --> 207.33.232.91 impossibly lacks ifp
>Jul  1 23:43:21 starwolf pppd[530]: Connection terminated.
>Jul  1 23:43:23 starwolf routed[156]: interface ppp0 to 207.33.232.1 turned off
>Jul  1 23:43:23 starwolf pppd[530]: Couldn't delete default route: No such process
>Jul  1 23:43:38 starwolf pppd[558]: pppd 2.3.0b5 started by root, uid 0
>Jul  1 23:43:38 starwolf routed[156]: Send sendto(ppp0, 207.33.232.1.520): Network is down
>Jul  1 23:43:38 starwolf pppd[558]: local  IP address 207.33.232.91
>Jul  1 23:43:38 starwolf pppd[558]: remote IP address 207.33.232.1
>Jul  1 23:44:13 starwolf pppd[564]: pppd 2.3.0b5 started by root, uid 0
>
>pppd was refusing to install a default route; named wasn't able to service
>requests and routed was bitching up a storm about not being able
>to get from here to there.

Can you try this patch?


Index: if.c
===================================================================
RCS file: /cvsroot/src/sbin/routed/if.c,v
retrieving revision 1.11
diff -u -r1.11 if.c
--- if.c	1997/02/03 22:02:54	1.11
+++ if.c	1997/07/05 22:40:17
@@ -246,7 +246,8 @@
 		for (ifp = ifnet; ifp; ifp = ifp->int_next) {
 			if (ifp->int_if_flags & IFF_POINTOPOINT) {
 				/* finished with a match */
-				if (ifp->int_dstaddr == addr)
+				if (ifp->int_dstaddr == addr ||
+				    ifp->int_addr == addr)
 					return ifp;
 
 			} else {