ietf-nntp Wildmats

Russ Allbery rra at stanford.edu
Tue Nov 14 11:20:47 PST 2000


Clive D W Feather <clive at demon.net> writes:

> (1) Do we want the present informal style of description or do we want
> something more formal ? I did an attempt of the latter which is at:
> <http://www.davros.org/nntp-texts/section-5.txt>. Please look at the
> general format and don't worry about the details for now.

> If we do want something more formal, I'm willing to do it based on the
> results of this thread.

I'm happy with either and have no strong opinions.  (My description was
informal because it was also INN documentation; that shouldn't be
considered a vote for an informal description or against Clive's version.)

> (2) Do we want more examples ? My version has a lot more, and in
> particular attempts to show some of the harder bits (like the effect of
> \ within []).

Examples are good.

Incidentally, for a whole bunch of additional examples, you can take a
look at my test suite for INN's wildmat implementation at

  <http://www.eyrie.org/~eagle/nntp/wildmat-t.c>

It contains quite a few highly pathological cases (and achieves 100% code
coverage of INN's wildmat implementation).

> (3) If something is described as "a wildmat", does "xxx,yyy" match the
> single string "xxx,yyy" or does it match either of the strings "xxx" or
> "yyy" ? My understanding is the latter, but we need to revisit the
> terminology in each case that it occurs.

The latter.

> The following commands have wildmat parameters:
>     LIST ACTIVE
>     LIST ACTIVE.TIMES
>     LIST NEWSGROUPS
>     PAT                (possibly can take multiple wildmats)
>     NEWNEWS
> and the command LIST DISTRIB.PATS returns a wildmat.

> For each of these we need to decide:
> (A) Is there only one argument or are several allowed ?

In all of those cases, I think that only one argument should be allowed,
particularly because...

> (B) What does a comma within the argument mean ?

...I think a comma should mean alternation.  This seems to me to be the
simplest and most uniform approach.

The LIST commands and NEWNEWS command are matching against newsgroups,
which can't contain commas, so there's no real worry about this changing
the meaning of commands in those cases.  And PAT is a new command in this
draft, and I think we already need to change the semantics somewhat from
existing XPAT practice because XPAT was extremely ugly.

> If we can consistently say that a comma separates patterns, and that
> patterns are matched on a "rightmost wins" basis, then we can simplify
> the terminology and the text.

I'm in favor of that.

> (4) Should backslash be allowed to remove the special status of
> characters other than the four listed ([ * ? and \), or only those four
> ? If so, which characters ? If not, how do I escape a comma ?

Backslash should escape a comma.  Backslash should remove the special
status of any character, I think, with the possible exception of u if we
adopt the idea below.

> (5) Do we want \u sequences to allow characters outside the ASCII set to be
> described using only ASCII characters ?

> (6) Do we want a way to escape space ?

I don't have a strong opinion on this, apart from noting that if we want
to fix (6), adopting (5) is probably the easiest way to do.

> (7) Is PAT supposed to have multiple arguments and, if so, how are they
> handled ?

If we adopt (5), then I think PAT should only allow a single argument.

-- 
Russ Allbery (rra at stanford.edu)             <http://www.eyrie.org/~eagle/>



More information about the ietf-nntp mailing list