Re: a problem with NETPOLL/KGDBoE

From: Matt Mackall
Date: Wed Dec 19 2007 - 12:29:02 EST


On Wed, Dec 19, 2007 at 06:22:55PM +0200, Ramagudi Naziir wrote:
> On 12/6/07, Matt Mackall <mpm@xxxxxxxxxxx> wrote:
> > netpoll will ignore incoming UDP -from- the wrong port/ip/mac, since
> > it's otherwise bypassing the firewall layer.
> ...
> > I forget how to deal
> > with the source address issue in connection with GDB, perhaps Jason
> > will remind us.
>
> I have checked it out.
> Seems like there is absolutely no way to configure the source
> port gdb uses for the udp connection. So one must invoke a
> "target remote udp:ip:port" command, see what was the
> chosen source port (tcpdump/netstat), and reconfigure kgdb on the target.
> While this works, it is rather awkward.
>
> Do you think there is/can be another way to solve this issue
> (like allowing NETPOLL to listen to a wildcard udp source port) ?

Here are the checks from net/core/netpoll.c:__netpoll_rx:

if (np->local_ip && np->local_ip != ntohl(iph->daddr))
goto out;
if (np->remote_ip && np->remote_ip != ntohl(iph->saddr))
goto out;
if (np->local_port && np->local_port != ntohs(uh->dest))
goto out;

In other words, we DON'T check remote_port and we don't check the
local_port, local_ip, or remote_ip if they're zero. Sorry for the
earlier confusion.

My hazy memory here is that my version of kgdboe took the first packet
it got and set remote_port from it so that it could reply. Not sure
whether that got copied as I can't seem to find the relevant bits in
the latest -mm.

--
Mathematics is the supreme nostalgia of our time.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/