+ }
+ /*
+ * Short circuit routing redirects to force
+ * immediate change in the kernel's routing
+ * tables. The message is also handed to anyone
+ * listening on a raw socket (e.g. the routing
+ * daemon for use in updating it's tables).
+ */
+ if (icp->icmp_type == ICMP_REDIRECT) {
+ icmpsrc.sin_addr = icp->icmp_ip.ip_dst;
+ icmpdst.sin_addr = icp->icmp_gwaddr;
+ rtredirect((struct sockaddr *)&icmpsrc,
+ (struct sockaddr *)&icmpdst);
+ }