[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[leafnode-list] Fwd: Re: leafnode & header fetches
There is a thread on uk.comp.os.linux that I've been following, but
don't know the full answer to. Anyone here care to comment?
Original post:
> Subject: leafnode & header fetches
> From: Michael Rozdoba <kcz@xxxxxxxxxxx>
> Newsgroups: uk.comp.os.linux
>
> I was going to use leafnode on the box I'm going to set up as my home lan
> server, however a friend's just told me it will insist on fetching all
> posts from the remote server for newsgroups subscribed to.
>
> I want to subscribe to some binary groups, so this isn't acceptable to me,
> especially as I only have a modem connection.
>
> I need to be able to set some subscriptions to header only, so that if a
> client box wants a particular body, it will ask the server box for this,
> which will then, /& only then/, fetch the body for me from the remote
> server.
>
> Is this possible with leafnode or any alternative news server?
A couple of posts pointed him towards 'delaybody', but he wants to use
it selectively on groups - ie download headers and bodies for some
groups, but headers only in other groups...
> From: Michael Rozdoba <ltw@xxxxxxxxxxx>
> Newsgroups: uk.comp.os.linux
> Subject: Re: leafnode & header fetches
> In article <slrn8msc38.4fh.Colin.Brough@xxxxxxxxxxxxxxxxxxx>,
> Colin Brough <Colin.Brough@xxxxxxxxxxxxxx> wrote:
>
> > Only when the headers have been read, the bodies of the articles
> > will be retrieved the next time fetch- news (8) is called.
>
> How does it decide when a header has been read? Merely when it is
> asked to serve that article?
>
> > It gets a bit more complicated if you want to do different things for
> > different groups
>
> Oh dear - I will do.
>
> > - eg always get the body for non-binary groups, but only the header for
> > the binary groups... You could do this with wrapper scripts that swap
> > over different configuration files, and add/remove groups from the
> > 'interesting.groups' directory (where a note of groups to be downloaded
> > is kept), I suppose, but this is a bit clunky.
>
> Sounds it :/
>
> I'm used to being able to use rule files like the following, in which the
> last matching rule is applied, on a per post basis:
>
> # Default rule file, created by NewsHound v1.39 at Wed May 12 00:19:05 1999
> #
> # For more information, see !NewsHound.Docs.ExamplRule
> # NB. These columns are TAB seperated
>
> # group subject from bytes lines msg-id ref's x-posts amount
>
> $ default action:
> * * * * * * * * art
>
> # NB. The _ONLY_ thing that should be listed in the next section is groups
> # that you want fetched header only. Put anything in manually and you risk
> # losing it!
> $ header only:
> alt.test * * * * xover
> rec.video * * * * xover
> rec.video.marketplace * * * * xover
> #
>
> $ max limits:
> # Get header for anything bigger than 512k
> * * * >512k * * * * xover
> # Get article for anything under 4k
> * * * <4k * * * * art
> # Get header for anything posted to over 5 groups
> * * * * * * * >5 xover
> # Kill anything posted to more than 10 groups
> * * * * * * * >10 none
>
> # This next section contains things you want to override from the above
> rules - eg.
> # postings by certain people or on certain subjects
> $ exceptions:
> * *Acorn FAQ* * * * * * * head
> * * *@acorn.co.uk* * * * * * art
>
> # The next session should contain things that you NEVER, ever want to see
> $ kills:
> # Kill anything posted with an aol email address
> * * *@aol* * * * * * none
> # Kill any articles with MONEY (in uppercase) in title
> * *MONEY* * * * * * * none
>
> Is there an easy way to achieve this under linux, with leafnode or another
> news server? I could write something to parse header files, apply such
> rules & indicate whether the file should be fetched or not. Does leafnode
> have the facility to invoke an external command, for each header it
> fetches, to then decide if the body should be fetched or not?
>
> Is there /any/ clean way to do what I want? My priorities are cleanliness
> of implementation then simplicity. Functionality can't be compromised. I
> can code in C.
>
> Hmm, how about fetching everything by header, parsing these with my own
> code, telling leafnode, for each that I want, that it has been read & then
> running leafnode again?
>
> How does leafnode record whether a header has been read or not? I'd need to
> mess with this data to get the above to work.
Thoughts? I see this is in the TODO list. Will it be in v.2? Does
Cornelius or anyone else have thoughts on a design for this, idea on
how it might be coded?
Cheers
Colin
----------------------------------------------------------------------
Colin Brough Colin.Brough@xxxxxxxxxxxxxx
--
leafnode-list@xxxxxxxxxxxxxxxxxxxxxxxxxxxx -- mailing list for leafnode
To unsubscribe, send mail with "unsubscribe" in the subject to the list