ping?

> On 10 Jul 2020, at 14:59, Vitaliy Makkoveev <henscheltig...@yahoo.com> wrote:
> 
> Some pseudo interfaces have missing `IFXF_CLONED' flag. Diff below fixes
> this.
> 
> Index: sys/net/if_ppp.c
> ===================================================================
> RCS file: /cvs/src/sys/net/if_ppp.c,v
> retrieving revision 1.114
> diff -u -p -r1.114 if_ppp.c
> --- sys/net/if_ppp.c  24 Jun 2020 22:03:42 -0000      1.114
> +++ sys/net/if_ppp.c  10 Jul 2020 11:57:39 -0000
> @@ -220,6 +220,7 @@ ppp_clone_create(struct if_clone *ifc, i
>       sc->sc_if.if_output = pppoutput;
>       sc->sc_if.if_start = ppp_ifstart;
>       sc->sc_if.if_rtrequest = p2p_rtrequest;
> +     sc->sc_if.if_xflags = IFXF_CLONED;
>       IFQ_SET_MAXLEN(&sc->sc_if.if_snd, IFQ_MAXLEN);
>       mq_init(&sc->sc_inq, IFQ_MAXLEN, IPL_NET);
>       ppp_pkt_list_init(&sc->sc_rawq, IFQ_MAXLEN);
> Index: sys/net/if_pppoe.c
> ===================================================================
> RCS file: /cvs/src/sys/net/if_pppoe.c,v
> retrieving revision 1.68
> diff -u -p -r1.68 if_pppoe.c
> --- sys/net/if_pppoe.c        16 Jun 2019 00:10:37 -0000      1.68
> +++ sys/net/if_pppoe.c        10 Jul 2020 11:57:39 -0000
> @@ -210,6 +210,7 @@ pppoe_clone_create(struct if_clone *ifc,
>       sc->sc_sppp.pp_if.if_ioctl = pppoe_ioctl;
>       sc->sc_sppp.pp_if.if_start = pppoe_start;
>       sc->sc_sppp.pp_if.if_rtrequest = p2p_rtrequest;
> +     sc->sc_sppp.pp_if.if_xflags = IFXF_CLONED;
>       sc->sc_sppp.pp_tls = pppoe_tls;
>       sc->sc_sppp.pp_tlf = pppoe_tlf;
>       IFQ_SET_MAXLEN(&sc->sc_sppp.pp_if.if_snd, IFQ_MAXLEN);
> Index: sys/net/if_switch.c
> ===================================================================
> RCS file: /cvs/src/sys/net/if_switch.c,v
> retrieving revision 1.30
> diff -u -p -r1.30 if_switch.c
> --- sys/net/if_switch.c       6 Nov 2019 03:51:26 -0000       1.30
> +++ sys/net/if_switch.c       10 Jul 2020 11:57:39 -0000
> @@ -159,6 +159,7 @@ switch_clone_create(struct if_clone *ifc
>       ifp->if_start = NULL;
>       ifp->if_type = IFT_BRIDGE;
>       ifp->if_hdrlen = ETHER_HDR_LEN;
> +     ifp->if_xflags = IFXF_CLONED;
>       TAILQ_INIT(&sc->sc_swpo_list);
> 
>       sc->sc_unit = unit;
> Index: sys/net/if_trunk.c
> ===================================================================
> RCS file: /cvs/src/sys/net/if_trunk.c,v
> retrieving revision 1.146
> diff -u -p -r1.146 if_trunk.c
> --- sys/net/if_trunk.c        17 Jun 2020 06:45:22 -0000      1.146
> +++ sys/net/if_trunk.c        10 Jul 2020 11:57:39 -0000
> @@ -184,6 +184,7 @@ trunk_clone_create(struct if_clone *ifc,
>       ifp->if_ioctl = trunk_ioctl;
>       ifp->if_flags = IFF_SIMPLEX | IFF_BROADCAST | IFF_MULTICAST;
>       ifp->if_capabilities = trunk_capabilities(tr);
> +     ifp->if_xflags = IFXF_CLONED;
> 
>       snprintf(ifp->if_xname, sizeof(ifp->if_xname), "%s%d",
>           ifc->ifc_name, unit);
> Index: sys/net/if_tun.c
> ===================================================================
> RCS file: /cvs/src/sys/net/if_tun.c,v
> retrieving revision 1.222
> diff -u -p -r1.222 if_tun.c
> --- sys/net/if_tun.c  13 May 2020 00:48:06 -0000      1.222
> +++ sys/net/if_tun.c  10 Jul 2020 11:57:39 -0000
> @@ -236,6 +236,7 @@ tun_create(struct if_clone *ifc, int uni
>       ifp->if_hardmtu = TUNMRU;
>       ifp->if_link_state = LINK_STATE_DOWN;
>       IFQ_SET_MAXLEN(&ifp->if_snd, IFQ_MAXLEN);
> +     ifp->if_xflags = IFXF_CLONED;
> 
>       if_counters_alloc(ifp);
> 
> Index: sys/net/if_vether.c
> ===================================================================
> RCS file: /cvs/src/sys/net/if_vether.c,v
> retrieving revision 1.30
> diff -u -p -r1.30 if_vether.c
> --- sys/net/if_vether.c       9 Jan 2018 15:24:24 -0000       1.30
> +++ sys/net/if_vether.c       10 Jul 2020 11:57:39 -0000
> @@ -88,6 +88,7 @@ vether_clone_create(struct if_clone *ifc
> 
>       ifp->if_hardmtu = ETHER_MAX_HARDMTU_LEN;
>       ifp->if_capabilities = IFCAP_VLAN_MTU;
> +     ifp->if_xflags = IFXF_CLONED;
> 
>       ifmedia_init(&sc->sc_media, 0, vether_media_change,
>           vether_media_status);
> Index: sys/net/if_vxlan.c
> ===================================================================
> RCS file: /cvs/src/sys/net/if_vxlan.c,v
> retrieving revision 1.77
> diff -u -p -r1.77 if_vxlan.c
> --- sys/net/if_vxlan.c        12 Apr 2020 11:56:52 -0000      1.77
> +++ sys/net/if_vxlan.c        10 Jul 2020 11:57:39 -0000
> @@ -155,6 +155,7 @@ vxlan_clone_create(struct if_clone *ifc,
> 
>       ifp->if_hardmtu = ETHER_MAX_HARDMTU_LEN;
>       ifp->if_capabilities = IFCAP_VLAN_MTU;
> +     ifp->if_xflags = IFXF_CLONED;
> 
>       ifmedia_init(&sc->sc_media, 0, vxlan_media_change,
>           vxlan_media_status);

Reply via email to