BIND 10 #2534: support minor cases for quoted character strings
BIND 10 Development
do-not-reply at isc.org
Wed Feb 19 15:52:23 UTC 2014
#2534: support minor cases for quoted character strings
-------------------------------------+-------------------------------------
Reporter: jinmei | Owner: muks
Type: task | Status:
Priority: medium | reviewing
Component: libdns++ | Milestone:
Keywords: | bind10-1.2-release-freeze
Sensitive: 0 | Resolution:
Sub-Project: DNS | CVSS Scoring:
Estimated Difficulty: 4 | Defect Severity: N/A
Total Hours: 0 | Feature Depending on Ticket:
| Add Hours to Ticket: 0
| Internal?: 0
-------------------------------------+-------------------------------------
Changes (by stephen):
* owner: shane => muks
Comment:
In the absence of Shane, my two pennyworth:
I think both sides are correct and the problem is exacerbated by the fact
that RFC 1035 is not clear on this point. As noted, RFC 1035 says that
<character-string> is expressed in one or two ways: as a contiguous set
of characters without interior spaces, or as a string beginning with a "
and ending with a "
Applied to:
{{{
Test-String"Test-String"
}}}
...my interpretation is that it is a single <character-string>: it doesn't
meet the ''beginning with a " and ending with a "'' criteria and it is a
''contiguous set of characters without interior spaces''.
On the other hand, I would argue that the reverse:
{{{
"Test-String"Test-String
}}}
... be interpreted as two <character-string>s. The string begins with a
quote and so, according to the RFC, ends with the next quote (which is
does). As there are more characters after it, they must form another
string.
The BIND 9 parser appears to interpret the first appearance of a quote
character within a string as effectively <space><quote>; it closes the
current token and opens a new one. Although I don't think this is correct,
it is the BIND 9 behaviour and so BIND 10 should do the same. For this
reason I say that the change is correct, so please go ahead and merge.
----
One final thing: I'll be pedantic and disagree with:
> The example from the section in the SPF RFC I pointed to also
demonstrates this equivalence. "v=spf1 .... first" "second string..." is
the same as "v=spf1 .... firstsecond string...".
The RFC says:
If a published record contains multiple strings, then the record MUST be
treated as if those strings are concatenated together without adding
spaces.
It doesn't say that they are the same, only that the processing of an SPF
record should treat them as if they were the same.
--
Ticket URL: <http://bind10.isc.org/ticket/2534#comment:21>
BIND 10 Development <http://bind10.isc.org>
BIND 10 Development
More information about the bind10-tickets
mailing list