Deleted Added
full compact
in6_pcb.c (78064) in6_pcb.c (81127)
1/* $FreeBSD: head/sys/netinet6/in6_pcb.c 78064 2001-06-11 12:39:29Z ume $ */
1/* $FreeBSD: head/sys/netinet6/in6_pcb.c 81127 2001-08-04 17:10:14Z ume $ */
2/* $KAME: in6_pcb.c,v 1.31 2001/05/21 05:45:10 jinmei Exp $ */
3
4/*
5 * Copyright (C) 1995, 1996, 1997, and 1998 WIDE Project.
6 * All rights reserved.
7 *
8 * Redistribution and use in source and binary forms, with or without
9 * modification, are permitted provided that the following conditions

--- 917 unchanged lines hidden (view full) ---

927 }
928 }
929 }
930 }
931 return (match);
932 }
933}
934
2/* $KAME: in6_pcb.c,v 1.31 2001/05/21 05:45:10 jinmei Exp $ */
3
4/*
5 * Copyright (C) 1995, 1996, 1997, and 1998 WIDE Project.
6 * All rights reserved.
7 *
8 * Redistribution and use in source and binary forms, with or without
9 * modification, are permitted provided that the following conditions

--- 917 unchanged lines hidden (view full) ---

927 }
928 }
929 }
930 }
931 return (match);
932 }
933}
934
935void
936in6_pcbpurgeif0(head, ifp)
937 struct in6pcb *head;
938 struct ifnet *ifp;
939{
940 struct in6pcb *in6p;
941 struct ip6_moptions *im6o;
942 struct in6_multi_mship *imm, *nimm;
943
944 for (in6p = head; in6p != NULL; in6p = LIST_NEXT(in6p, inp_list)) {
945 im6o = in6p->in6p_moptions;
946 if ((in6p->inp_vflag & INP_IPV6) &&
947 im6o) {
948 /*
949 * Unselect the outgoing interface if it is being
950 * detached.
951 */
952 if (im6o->im6o_multicast_ifp == ifp)
953 im6o->im6o_multicast_ifp = NULL;
954
955 /*
956 * Drop multicast group membership if we joined
957 * through the interface being detached.
958 * XXX controversial - is it really legal for kernel
959 * to force this?
960 */
961 for (imm = im6o->im6o_memberships.lh_first;
962 imm != NULL; imm = nimm) {
963 nimm = imm->i6mm_chain.le_next;
964 if (imm->i6mm_maddr->in6m_ifp == ifp) {
965 LIST_REMOVE(imm, i6mm_chain);
966 in6_delmulti(imm->i6mm_maddr);
967 free(imm, M_IPMADDR);
968 }
969 }
970 }
971 }
972}
973
935/*
936 * Check for alternatives when higher level complains
937 * about service problems. For now, invalidate cached
938 * routing information. If the route was created dynamically
939 * (by a redirect), time to try a default gateway again.
940 */
941void
942in6_losing(in6p)

--- 132 unchanged lines hidden ---
974/*
975 * Check for alternatives when higher level complains
976 * about service problems. For now, invalidate cached
977 * routing information. If the route was created dynamically
978 * (by a redirect), time to try a default gateway again.
979 */
980void
981in6_losing(in6p)

--- 132 unchanged lines hidden ---