Subject: Re: Dialup connections and daily worm terror
To: Steve Woodford <email@example.com>
From: Martin Husemann <firstname.lastname@example.org>
Date: 09/03/2003 11:59:41
On Wed, Sep 03, 2003 at 09:21:22AM +0100, Steve Woodford wrote:
> Look for "active-filter-in" and possibly "active-filter-out". These
> allow you to specify which types of packets should be ignored when
> deciding if the link is idle.
Unfortunately the in-kernel (if_spppsubr.c based) PPP interfaces do not
have such an option.
I can think of several solutions:
- add compile time options to only account incoming or outgoing traffic
for "idle" calculations.
- add a "last received" and "last send" time_t memebers to struct ifnet,
updated by higher levels of the network stack at apropriate times,
so that when IPFilter blocks a packet, this time is not updated.
- add a list of protocol/ports to if_spppsubr.c based interfaces and
make them filter before updating the time (this is a bad hack,
but similar to what pppd does).
- resurrect the idea of a global packet classifier mechanism and use
that to do the filtering.
I tend to take the easy way out and go with the first one, though the
second seems pretty easy and usefull too.