Add the dot in the correct place

This commit is contained in:
Miek Gieben 2012-02-12 12:36:26 +01:00
parent 34a711372a
commit 9c478ab6e4
3 changed files with 16 additions and 16 deletions

View File

@ -155,7 +155,7 @@ func TestDomainName(t *testing.T) {
func TestParseDirective(t *testing.T) {
tests := map[string]string{
"$ORIGIN miek.nl.\na IN NS b": "a.miek.nl.\tIN\tNS\tb.miek.nl.",
"$ORIGIN miek.nl.\na IN NS b": "a.miek.nl.\t3600\tIN\tNS\tb.miek.nl.",
}
for i, o := range tests {
rr, e := NewRR(i)

View File

@ -10,7 +10,7 @@ import (
)
// Only used when debugging the parser itself.
var _DEBUG = true
var _DEBUG = false
const maxTok = 1024
@ -167,7 +167,7 @@ func parseZone(r io.Reader, f string, t chan Token, include int) {
return
}
if h.Name[ld-1] != '.' {
h.Name += "." + origin
h.Name += origin
}
st = _EXPECT_OWNER_BL
case _DIRTTL:
@ -232,9 +232,9 @@ func parseZone(r io.Reader, f string, t chan Token, include int) {
return
}
if !IsFqdn(l.token) {
origin = l.token + origin // Append old origin if the new one isn't a fqdn
origin = l.token + "." + origin // Append old origin if the new one isn't a fqdn
} else {
origin = l.token
origin = "." +l.token
}
st = _EXPECT_OWNER_DIR
case _EXPECT_OWNER_BL:

View File

@ -143,7 +143,7 @@ func setNS(h RR_Header, c chan lex, o, f string) (RR, *ParseError) {
return nil, &ParseError{f, "bad NS Ns", l}
}
if rr.Ns[ld-1] != '.' {
rr.Ns += "." + o
rr.Ns += o
}
return rr, nil
}
@ -159,7 +159,7 @@ func setPTR(h RR_Header, c chan lex, o, f string) (RR, *ParseError) {
return nil, &ParseError{f, "bad PTR Ptr", l}
}
if rr.Ptr[ld-1] != '.' {
rr.Ptr += "." + o
rr.Ptr += o
}
return rr, nil
}
@ -182,7 +182,7 @@ func setMX(h RR_Header, c chan lex, o, f string) (RR, *ParseError) {
return nil, &ParseError{f, "bad MX Mx", l}
}
if rr.Mx[ld-1] != '.' {
rr.Mx += "." + o
rr.Mx += o
}
return rr, nil
}
@ -198,7 +198,7 @@ func setCNAME(h RR_Header, c chan lex, o, f string) (RR, *ParseError) {
return nil, &ParseError{f, "bad CNAME Cname", l}
}
if rr.Cname[ld-1] != '.' {
rr.Cname += "." + o
rr.Cname += o
}
return rr, nil
}
@ -214,7 +214,7 @@ func setDNAME(h RR_Header, c chan lex, o, f string) (RR, *ParseError) {
return nil, &ParseError{f, "bad CNAME Target", l}
}
if rr.Target[ld-1] != '.' {
rr.Target += "." + o
rr.Target += o
}
return rr, nil
}
@ -231,7 +231,7 @@ func setSOA(h RR_Header, c chan lex, o, f string) (RR, *ParseError) {
return nil, &ParseError{f, "bad SOA Ns", l}
}
if rr.Ns[ld-1] != '.' {
rr.Ns += "." + o
rr.Ns += o
}
l = <-c
@ -241,7 +241,7 @@ func setSOA(h RR_Header, c chan lex, o, f string) (RR, *ParseError) {
return nil, &ParseError{f, "bad SOA Mbox", l}
}
if rr.Mbox[ld-1] != '.' {
rr.Mbox += "." + o
rr.Mbox += o
}
<-c // _BLANK
@ -304,7 +304,7 @@ func setSRV(h RR_Header, c chan lex, o, f string) (RR, *ParseError) {
return nil, &ParseError{f, "bad SRV Target", l}
}
if rr.Target[ld-1] != '.' {
rr.Target += "." + o
rr.Target += o
}
return rr, nil
}
@ -346,7 +346,7 @@ func setNAPTR(h RR_Header, c chan lex, o, f string) (RR, *ParseError) {
return nil, &ParseError{f, "bad NAPTR Replacement", l}
}
if rr.Replacement[ld-1] != '.' {
rr.Replacement += "." + o
rr.Replacement += o
}
return rr, nil
}
@ -453,7 +453,7 @@ func setRRSIG(h RR_Header, c chan lex, o, f string) (RR, *ParseError) {
return nil, &ParseError{f, "bad RRSIG SignerName", l}
}
if rr.SignerName[ld-1] != '.' {
rr.SignerName += "." + o
rr.SignerName += o
}
// Get the remaining data until we see a NEWLINE
l = <-c
@ -484,7 +484,7 @@ func setNSEC(h RR_Header, c chan lex, o, f string) (RR, *ParseError) {
return nil, &ParseError{f, "bad NSEC NextDomain", l}
}
if rr.NextDomain[ld-1] != '.' {
rr.NextDomain += "." + o
rr.NextDomain += o
}
rr.TypeBitMap = make([]uint16, 0)