On 10/7/24 12:14, Rick Troth wrote:
Postel's rule ... "be conservative in what you send, be liberal in what you 
accept"?

I firmly agree with this because it leads to solid interoperability. (Many refer to it as 
"the robustness principle".)

Is that the one you disagree with?
 .
I disagree with Postel's second clause.  It undermines interoperability:
<https://en.wikipedia.org/wiki/Robustness_principle>

Criticism
In 2001, Marshall Rose characterized several deployment problems
when applying Postel's principle in the design of a new application
protocol.[4] For example, a defective implementation that sends
non-conforming messages might be used only with implementations
that tolerate those deviations from the specification until,
possibly several years later, it is connected with a less tolerant
application that rejects its messages. In such a situation,
identifying the problem is often difficult, and deploying a
solution can be costly. Rose therefore recommended "explicit
consistency checks in a protocol ... even if they impose
implementation overhead".
    ...

In 2023, Martin Thomson and David Schinazi argued that Postel's
robustness principle actually leads to a lack of robustness,
including security:[6]

    A flaw can become entrenched as a de facto standard. Any
implementation of the protocol is required to replicate the
aberrant behavior, or it is not interoperable. This is both
a consequence of tolerating the unexpected and a product of a
natural reluctance to avoid fatal error conditions. Ensuring
interoperability in this environment is often referred to as
aiming to be "bug-for-bug compatible".


--
gil

Reply via email to