Skip to content


Subversion checkout URL

You can clone with
Download ZIP
Commits on Jul 23, 2015
  1. Fix PR 48104

    ozaki-r authored
    So far bridge cannot receive frames via a member interface when the frames
    come from another member interface. So when we assign an IP address to
    a member interface, hosts connected to another member interface cannot
    ping to the IP address. That behavior isn't expected. See PR 48104 for
    more realistic examples of this issue.
    The change does:
    - drop M_PROMISC before ether_input, which allows a bridge member interface
      to receive a frame coming from another bridge member interface
    - receive broadcast/multicast frames via all bridge member interfaces,
      which is required to receive IPv6 multicast packets destined to a
      multicast group belonging to a bridge member interface that is different
      from a packet arrival interface
    roy@ helped testing of the fix, thanks!
Commits on Jul 17, 2015
  1. Reform use of rt_refcnt

    ozaki-r authored
    rt_refcnt of rtentry was used in bad manners, for example, direct rt_refcnt++
    and rt_refcnt-- outside route.c, "rt->rt_refcnt++; rtfree(rt);" idiom, and
    touching rt after rt->rt_refcnt--.
    These abuses seem to be needed because rt_refcnt manages only references
    between rtentry and doesn't take care of references during packet processing
    (IOW references from local variables). In order to reduce the above abuses,
    the latter cases should be counted by rt_refcnt as well as the former cases.
    This change improves consistency of use of rt_refcnt:
    - rtentry is always accessed with rt_refcnt incremented
    - rtentry's rt_refcnt is decremented after use (rtfree is always used instead
      of rt_refcnt--)
    - functions returning rtentry increment its rt_refcnt (and caller rtfree it)
    Note that rt_refcnt prevents rtentry from being freed but doesn't prevent
    rtentry from being updated. Toward MP-safe, we need to provide another
    protection for rtentry, e.g., locks. (Or introduce a better data structure
    allowing concurrent readers during updates.)
Commits on Jul 14, 2015
  1. Move rt_gwroute operation out of stripoutput

    ozaki-r authored
    We should do it in ip_hresolv_needed.
  2. Remove unnecessary if_type setting

    ozaki-r authored
    if_type is set as IFT_SLIP below.
  3. KNF

    ozaki-r authored
Commits on Jul 12, 2015
Commits on Jul 1, 2015
  1. Use ip_hresolv_output for if_token as well

    ozaki-r authored
    I thought we cannot apply ip_hresolv_output to if_token because
    rt0 looked being needed by arpresolve in token_output. However,
    rt0 is actually not used by arpresolve in NetBSD (see obsolete
    ARPRESOLVE macro).
Commits on Jun 29, 2015
  1. Remove ifnet_addrs

    ozaki-r authored
    We can assume that ifnet_addrs[ifp->if_index] is always the same as
    ifp->if_dl, so we can replace ifnet_addrs[ifp->if_index] with ifp->if_dl
    and remove ifnet_addrs entirely.
    ok martin@
Commits on Jun 8, 2015
  1. - npfctl: fix the confusion in the parser (0/0 case with no other fil…

    rmind authored
    - Always populate the error dictionary, not only for DEBUG/DIAGNOSTIC.
Commits on Jun 4, 2015
  1. Pull out route lookups from L2 output routines

    ozaki-r authored
    Route lookups for routes of RTF_GATEWAY were done in L2 output
    routines such as ether_output, but they should be done in L3
    i.e., before L2 output routines. This change places the lookups
    between L3 output routines (say ip_output) and the L2 output
    The change is based on dyoung's patch submitted in the thread:
    You can find out detailed investigations by dyoung about the
    issue in there.
    Note that the change introduces a workaround for MPLS. ether_output
    knew that it needs to fill the ethertype of a frame as MPLS,
    based on a tag of an original route (rtentry), but now we don't
    pass it to ehter_output. So we have to tell that in another way.
    We use mtag to do so for now, which introduces some overhead.
    We should fix it somehow in the future.
    Discussed on tech-kern and tech-net.
Commits on Jun 3, 2015
  1. Include <sys/socketvar.h> for softnet_lock.

    martin authored
  2. Obtain softnet_lock before entering IP networking stack from gif soft…

    hsuenaga authored
Commits on Jun 1, 2015
  1. Modify the BRDGGIFS and BRDGRTS cmds to be more COMPAT_NETBSD32 frien…

    matt authored
    (XXX whitespace)
  2. Back out prior

    roy authored
    gimpy1@ we don't #include driver .h in netbsd32
Commits on May 31, 2015
  1. Revert prior change, optionally include PPPOE and SPPP support again.

    roy authored
    Fix compat_netbsd32 module building by enforcing both.
  2. Revert prior as it's no longer needed.

    roy authored
  3. Allow sppp to be #if NSPPP > 0

    roy authored
Commits on May 30, 2015
  1. Improve wording.

    joerg authored
Commits on May 25, 2015
  1. Remove leftover DECNET-related stuffs

    ozaki-r authored
    No objection on tech-kern and tech-net.
  2. Remove leftover IPX-related stuffs

    ozaki-r authored
    No objection on tech-kern and tech-net.
Commits on May 20, 2015
  1. Remove leftover use of AF_NS and NS option

    ozaki-r authored
    Unnecessary NETISR_NS is also removed.
Commits on May 18, 2015
Commits on May 2, 2015
  1. make connect syscall use sockaddr_big and modify pr_{send,connect}

    rtr authored
    nam parameter type from buf * to sockaddr *.
    final commit for parameter type changes to protocol user requests
    * bump kernel version to 7.99.15 for parameter type changes to pr_{send,connect}
  2. Add IPv4 address flags IN_IFF_TENTATIVE, IN_IFF_DUPLICATED and

    roy authored
    IN_IFF_DETATCHED to mimic the IPv6 address behaviour.
    Add SIOCGIFAFLAG_IN ioctl to retrieve the address flag via the
    ifreq structure.
    Add IPv4 DAD detection via the ARP methods described in RFC 5227.
    Add sysctls net.inet.ip.dad_count and net.inet.arp.debug.
    Discussed on tech-net@
Commits on Apr 30, 2015
  1. Make some functions static

    ozaki-r authored
    - rtflushall
    - rtcache_clear
    - rtcache_invalidate
    And pull these static inline functions in route.c
    - rt_destroy
    - rt_setkey
Commits on Apr 28, 2015
  1. Fix previous

    ozaki-r authored
    sockaddr_copy never fail here so we can just return in success.
    The previous code worked anyway, so I didn't notice the mistake...
Commits on Apr 26, 2015
  1. remove pr_generic from struct pr_usrreqs and all implementations of

    rtr authored
    pr_generic in protocols.
    bump to 7.99.13
    approved by rmind@
Commits on Apr 24, 2015
  1. make accept, getsockname and getpeername syscalls use sockaddr_big an…

    rtr authored
    …d modify
    pr_{accept,sockname,peername} nam parameter type from mbuf * to sockaddr *.
    * retained use of mbuftypes[MT_SONAME] for now.
    * bump to netbsd version 7.99.12 for parameter type change.
    patch posted to tech-net@ 2015/04/19
Commits on Apr 22, 2015
  1. This comment is no longer IPv6 specific.

    roy authored
  2. Fix a copy n pasta error with prior.

    roy authored
  3. Move INET6 specific in6_if_{up,down}() and in6_if_link_{up,down}()

    roy authored
    into agnostic domain functions.
Commits on Apr 21, 2015
  1. Attach PF_INET6 pktq sysctls only when inet6 is present.

    pooka authored
    More modular initialization would be nicer, but at least this patch
    prevents "sysctl -a" from crashing when INET6 is defined by inet6 has
    not been attached.
Commits on Apr 20, 2015
  1. Introduce p2p_rtrequest() so that IFF_POINTOPOINT interfaces can work

    roy authored
    with RTF_LOCAL.
    Fixes PR kern/49829.
Commits on Apr 18, 2015
  1. Count up parent's obytes and omcasts counters

    ozaki-r authored
    PR kern/49837
Something went wrong with that request. Please try again.