BSD 4_3_Tahoe release
[unix-history] / usr / src / sys / netinet / in_pcb.c
index 0322d6c..a7211cc 100644 (file)
  * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
  * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
  *
  * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
  * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
  *
- *     @(#)in_pcb.c    7.10 (Berkeley) %G%
+ *     @(#)in_pcb.c    7.7 (Berkeley) 6/29/88
  */
 
 #include "param.h"
 #include "systm.h"
  */
 
 #include "param.h"
 #include "systm.h"
+#include "dir.h"
 #include "user.h"
 #include "user.h"
-#include "malloc.h"
 #include "mbuf.h"
 #include "socket.h"
 #include "socketvar.h"
 #include "mbuf.h"
 #include "socket.h"
 #include "socketvar.h"
@@ -167,7 +167,6 @@ in_pcbconnect(inp, nam)
                    ro->ro_rt->rt_ifp == (struct ifnet *)0)) {
                        /* No route yet, so try to acquire one */
                        ro->ro_dst.sa_family = AF_INET;
                    ro->ro_rt->rt_ifp == (struct ifnet *)0)) {
                        /* No route yet, so try to acquire one */
                        ro->ro_dst.sa_family = AF_INET;
-                       ro->ro_dst.sa_len = sizeof(struct sockaddr_in);
                        ((struct sockaddr_in *) &ro->ro_dst)->sin_addr =
                                sin->sin_addr;
                        rtalloc(ro);
                        ((struct sockaddr_in *) &ro->ro_dst)->sin_addr =
                                sin->sin_addr;
                        rtalloc(ro);
@@ -251,7 +250,6 @@ in_setsockaddr(inp, nam)
        sin = mtod(nam, struct sockaddr_in *);
        bzero((caddr_t)sin, sizeof (*sin));
        sin->sin_family = AF_INET;
        sin = mtod(nam, struct sockaddr_in *);
        bzero((caddr_t)sin, sizeof (*sin));
        sin->sin_family = AF_INET;
-       sin->sin_len = sizeof(*sin);
        sin->sin_port = inp->inp_lport;
        sin->sin_addr = inp->inp_laddr;
 }
        sin->sin_port = inp->inp_lport;
        sin->sin_addr = inp->inp_laddr;
 }
@@ -266,7 +264,6 @@ in_setpeeraddr(inp, nam)
        sin = mtod(nam, struct sockaddr_in *);
        bzero((caddr_t)sin, sizeof (*sin));
        sin->sin_family = AF_INET;
        sin = mtod(nam, struct sockaddr_in *);
        bzero((caddr_t)sin, sizeof (*sin));
        sin->sin_family = AF_INET;
-       sin->sin_len = sizeof(*sin);
        sin->sin_port = inp->inp_fport;
        sin->sin_addr = inp->inp_faddr;
 }
        sin->sin_port = inp->inp_fport;
        sin->sin_addr = inp->inp_faddr;
 }
@@ -312,15 +309,10 @@ in_losing(inp)
        register struct rtentry *rt;
 
        if ((rt = inp->inp_route.ro_rt)) {
        register struct rtentry *rt;
 
        if ((rt = inp->inp_route.ro_rt)) {
-               rt_missmsg(RTM_LOSING, &inp->inp_route.ro_dst,
-                           rt->rt_gateway, (struct sockaddr *)rt_mask(rt),
-                           (struct sockaddr *)0, rt->rt_flags, 0);
                if (rt->rt_flags & RTF_DYNAMIC)
                if (rt->rt_flags & RTF_DYNAMIC)
-                       (void) rtrequest(RTM_DELETE, rt_key(rt),
-                               rt->rt_gateway, rt_mask(rt), rt->rt_flags, 
-                               (struct rtentry **)0);
-               inp->inp_route.ro_rt = 0;
+                       (void) rtrequest((int)SIOCDELRT, rt);
                rtfree(rt);
                rtfree(rt);
+               inp->inp_route.ro_rt = 0;
                /*
                 * A new route can be allocated
                 * the next time output is attempted.
                /*
                 * A new route can be allocated
                 * the next time output is attempted.