patch-1.3.99 linux/net/ipv4/ip_output.c
Next file: linux/net/ipv4/ip_sockglue.c
Previous file: linux/net/ipv4/ip_masq.c
Back to the patch index
Back to the overall index
-  Lines: 27
 -  Date:
Tue May  7 12:06:53 1996
 -  Orig file: 
v1.3.98/linux/net/ipv4/ip_output.c
 -  Orig date: 
Wed Apr 24 17:00:43 1996
 
diff -u --recursive --new-file v1.3.98/linux/net/ipv4/ip_output.c linux/net/ipv4/ip_output.c
@@ -224,7 +224,7 @@
 		 * release route, so that...
 		 */
 		if (rt)
-			ATOMIC_INCR(&rt->rt_refcnt);
+			atomic_inc(&rt->rt_refcnt);
 	}
 	else
 		rt = ip_rt_route(daddr, skb->localroute);
@@ -1059,7 +1059,8 @@
 	nrt->rtmsg_flags=flags;
 	nrt->rtmsg_metric=metric;
 	strcpy(nrt->rtmsg_device,name);
-	netlink_post(NETLINK_ROUTE, skb);
+	if (netlink_post(NETLINK_ROUTE, skb))
+		kfree_skb(skb, FREE_WRITE);
 }	
 
 #endif
@@ -1085,6 +1086,7 @@
 		ip_mc_allhost(dev);
 #endif		
 		ip_netlink_msg(RTMSG_NEWDEVICE, 0,0,0,0,0,dev->name);
+		ip_rt_update(NETDEV_UP, dev);
 	}
 	return NOTIFY_DONE;
 }
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen, slshen@lbl.gov
with Sam's (original) version of this