[OpenWrt-Devel] [PATCH] interface-ip: fix find locally addressable target for p2p

Hans Dedecker dedeckeh at gmail.com
Thu May 16 09:40:39 PDT 2019


Hi

On Thu, May 16, 2019 at 5:09 PM Tan Xiaofan <xfan1024 at live.com> wrote:
>
> Hi, I add some explanation to the patch
>
> From 57007eef77f266e40640a2c76aabd56fd37553f7 Mon Sep 17 00:00:00 2001
> From: xiaofan <xfan1024 at live.com>
> Date: Thu, 16 May 2019 21:12:47 +0800
> Subject: [PATCH] interface-ip: fix find locally addressable target for p2p
>
> In case of tunnel over PPP(such as gretap over l2tp): tunnel interface
> use PPP's peer address as remote address, netifd script will call
> proto_add_host_dependency function, then netifd will search which device
> can reach to the remote address. Before the patch, netifd don't consider
> the PPP interface can reach to the remote address, so netifd will select
> default route to remote address, it will lead to remote address unreachable.
The patch fails to apply with the updated commit description; please
resend after you've created the patch via git format-patch with the
updated git commit description

Hans
>
> Signed-off-by: xiaofan <xfan1024 at live.com>
> ---
>  interface-ip.c | 3 +++
>  1 file changed, 3 insertions(+)
>
> diff --git a/interface-ip.c b/interface-ip.c
> index 6900cd7..8d5587c 100644
> --- a/interface-ip.c
> +++ b/interface-ip.c
> @@ -196,6 +196,9 @@ __find_ip_addr_target(struct interface_ip_settings *ip, union if_addr *a, bool v
>    if (v6 != ((addr->flags & DEVADDR_FAMILY) == DEVADDR_INET6))
>     continue;
>
> +  if (!v6 && addr->point_to_point && a->in.s_addr == addr->point_to_point)
> +   return true;
> +
>    /* Handle offlink addresses correctly */
>    unsigned int mask = addr->mask;
>    if ((addr->flags & DEVADDR_FAMILY) == DEVADDR_INET6 &&
> --
> 2.17.1
>
>
>
>
> >
> > Hi,
> >
> > On Thu, May 16, 2019 at 4:01 PM Tan Xiaofan <xfan1024 at live.com> wrote:
> > >
> > > From d0e1cb81b45ec825199d499cda9c8daef94e13a5 Mon Sep 17 00:00:00 2001
> > > From: xiaofan <xfan1024 at live.com>
> > > Date: Thu, 16 May 2019 21:12:47 +0800
> > > Subject: [PATCH] interface-ip: fix find locally addressable target for p2p
> > The patch fails to explain why this change is required and what
> > usecase/problem it fixes.
> >
> > Hans
> > >
> > > Signed-off-by: xiaofan <xfan1024 at live.com>
> > > ---
> > >  interface-ip.c | 4 ++++
> > >  1 file changed, 4 insertions(+)
> > >
> > > diff --git a/interface-ip.c b/interface-ip.c
> > > index 6900cd7..7ab8643 100644
> > > --- a/interface-ip.c
> > > +++ b/interface-ip.c
> > > @@ -196,6 +196,10 @@ __find_ip_addr_target(struct interface_ip_settings *ip, union if_addr *a, bool v
> > >    if (v6 != ((addr->flags & DEVADDR_FAMILY) == DEVADDR_INET6))
> > >     continue;
> > >
> > > +  if (!v6 && addr->point_to_point && a->in.s_addr == addr->point_to_point) {
> > > +   return true;
> > > +  }
> > > +
> > >    /* Handle offlink addresses correctly */
> > >    unsigned int mask = addr->mask;
> > >    if ((addr->flags & DEVADDR_FAMILY) == DEVADDR_INET6 &&
> > > --
> > > 2.17.1
> > >
> > >
> > > _______________________________________________
> > > openwrt-devel mailing list
> > > openwrt-devel at lists.openwrt.org
> > > https://lists.openwrt.org/mailman/listinfo/openwrt-devel
> >



More information about the openwrt-devel mailing list