|
Lines 48-53
Link Here
|
| 48 |
|
48 |
|
| 49 |
#include <netinet/in.h> |
49 |
#include <netinet/in.h> |
| 50 |
#include <netinet/in_var.h> |
50 |
#include <netinet/in_var.h> |
|
|
51 |
#include <netinet/in_pcb.h> |
| 51 |
|
52 |
|
| 52 |
#include <netinet/igmp_var.h> |
53 |
#include <netinet/igmp_var.h> |
| 53 |
|
54 |
|
|
Lines 68-73
Link Here
|
| 68 |
|
69 |
|
| 69 |
struct in_multihead in_multihead; /* XXX BSS initialization */ |
70 |
struct in_multihead in_multihead; /* XXX BSS initialization */ |
| 70 |
|
71 |
|
|
|
72 |
extern struct inpcbinfo ripcbinfo; |
| 73 |
extern struct inpcbinfo udbinfo; |
| 74 |
|
| 71 |
/* |
75 |
/* |
| 72 |
* Return 1 if an internet address is for a ``local'' host |
76 |
* Return 1 if an internet address is for a ``local'' host |
| 73 |
* (one to which we have a connection). If subnetsarelocal |
77 |
* (one to which we have a connection). If subnetsarelocal |
|
Lines 402-407
Link Here
|
| 402 |
* a routing process they will come back. |
406 |
* a routing process they will come back. |
| 403 |
*/ |
407 |
*/ |
| 404 |
in_ifadown(&ia->ia_ifa, 1); |
408 |
in_ifadown(&ia->ia_ifa, 1); |
|
|
409 |
/* |
| 410 |
* XXX horrible hack to detect that we are being called |
| 411 |
* from if_detach() |
| 412 |
*/ |
| 413 |
if (!ifnet_addrs[ifp->if_index - 1]) { |
| 414 |
in_pcbpurgeif0(LIST_FIRST(ripcbinfo.listhead), ifp); |
| 415 |
in_pcbpurgeif0(LIST_FIRST(udbinfo.listhead), ifp); |
| 416 |
} |
| 405 |
|
417 |
|
| 406 |
/* |
418 |
/* |
| 407 |
* Protect from ipintr() traversing address list |
419 |
* Protect from ipintr() traversing address list |