Tap fix



  • Not sure if the comments in openvpn.inc line 297 are referring to the same issue fixed by this commit.

    Author: davidxu
    Date: Tue Nov 27 12:23:57 2012
    New Revision: 243615
    URL: http://svnweb.freebsd.org/changeset/base/243615

    Log:
     Pass allocated unit number to make_dev, otherwise kernel panics later while
     cloning second tap.
     
     Reviewed by: kevlo,ed

    Modified:
     head/sys/net/if_tap.c

    Modified: head/sys/net/if_tap.c

    –- head/sys/net/if_tap.c Tue Nov 27 11:30:39 2012 (r243614)
    +++ head/sys/net/if_tap.c Tue Nov 27 12:23:57 2012 (r243615)
    @@ -186,7 +186,7 @@ tap_clone_create(struct if_clone ifc, i
    /
    Find any existing device, or allocate new unit number. */
    i = clone_create(&tapclones, &tap_cdevsw, &unit, &dev, 0);
    if (i) {

    • dev = make_dev(&tap_cdevsw, 0, UID_ROOT, GID_WHEEL, 0600,
    • dev = make_dev(&tap_cdevsw, unit, UID_ROOT, GID_WHEEL, 0600,
         "%s%d", tapname, unit);
      }

  • Rebel Alliance Developer Netgate

    For some reason I was thinking we either already had a similar fix or someone committed some code to work around it. I remember seeing a commit in our repo a few months back that was supposed to fix switching between tun/tap which was the last issue left there, I believe.


Locked