Problem with cond_put_corrupt_token test
John Meissen
john at meissen.org
Sat Nov 8 14:17:39 EST 2008
> Hi Tobias,
>
> On Sat, Nov 08, 2008 at 06:25:26PM +0100, Tobias Schlitt wrote:
> > I examined the If header, which looks like this:
> >
> > If: (<opaquelocktoken:bed586e3-1876-3f16-b0c9-bccbd0c53947x>) (Not
> > <DAV:no-lock>)
> >
> > The first condition is the correct lock token, appended by an 'x' and
> > therefore a broken lock token. However, the second condition is negated,
> > therefore the condition list is overall evaluated to TRUE.
>
> I think you have this part wrong - it's a logical AND not a logical OR:
>
> http://tools.ietf.org/html/rfc4918#section-10.4.3 para 2:
>
> Each List production describes a series of conditions. The whole
> list evaluates to true if and only if each condition evaluates to
> true (that is, the list represents a logical conjunction of
> Conditions).
>
> Regards, Joe
>
No, he's right. At least about the header evaluation.
The header consists of one or more lists, each list containing one or more
conditions. Also according to RFC4918, 10.4.3, para 4:
Finally, the whole If header evaluates to true if and only if at
least one of the No-tag-list or Tagged-list productions evaluates to
true.
So each list is a logical AND, but the set of lists is a logical OR.
This specific case is even listed as one of the examples:
10.4.8. Example - Causing a Condition to Always Evaluate to True
john-
More information about the litmus
mailing list