Andrew Tunnell-Jones
3f834a04fb
Update domain name and TXT string escape behaviour
...
Changes to domain name packing and unpacking:
* Escape dot, backslash, brackets, double-quote, semi-colon and space
* Tab, line feed and carriage return become \t, \n and \r
Changes to TXT string packing and unpacking:
* Escape backslash and double-quote
* Tab, line feed and carriage return become \t, \n and \r
* Other unprintables to \DDD
Stringers do the equivalent of putting domain names and TXT strings
to the wire and back.
There is some duplication of logic. I found performance suffered when
I broke the logic out into smaller functions. I think this may have
been due to functions not being inlined for various reasons.
2014-02-26 10:55:11 +00:00
Andrew Tunnell-Jones
f6d8a66c01
Add quick tests for domain name and TXT rr
2014-02-26 10:52:48 +00:00
Miek Gieben
6d77efff22
Merge pull request #86 from andrewtj/atj-hipfix
...
Fix HIP record unpacking
2014-02-22 08:16:55 +00:00
Andrew Tunnell-Jones
c500de0e7a
Fix HIP record unpacking
...
* limit decoding of Hit to HitLength
* limit decoding of PublicKey to PublicKeyLength
* limit decoding of RendezvousServers to rdata's length
2014-02-22 05:28:48 +00:00
Miek Gieben
979b2ea731
Merge pull request #84 from andrewtj/atj-escape
...
Fix packing label ending in escaped dot
2014-02-15 08:06:09 +00:00
Miek Gieben
09b05ded46
Remove external DNS dependency
...
This makes the test run 10x faster and does not require internet
access for running the tests.
2014-02-15 08:03:40 +00:00
Andrew Tunnell-Jones
4bf3023c78
Handle label ending in an escaped dot in PackDomain
2014-02-15 00:40:53 +00:00
Andrew Tunnell-Jones
158454ada4
Test packing label ending in escaped dot
2014-02-15 00:37:57 +00:00
Miek Gieben
0258525f20
Comment tweak
2014-02-14 22:47:53 +00:00
Miek Gieben
e81b46d580
Add client.UDPsize
...
This allows a client to set a default UDPSize with resorting to EDNS0
headers 'n stuff.
2014-02-14 22:14:41 +00:00
Miek Gieben
3fca11e695
Add test to see that udp client is too large
2014-02-14 21:53:00 +00:00
Miek Gieben
87b380cad5
Revert "Use dLen for domain name length"
...
This reverts commit b595183834
.
Fix up the tests too.
2014-02-14 20:20:22 +00:00
Miek Gieben
83efab6078
Revert "Use dLen in TSIG too"
...
This reverts commit 37406413d7
.
2014-02-14 20:05:51 +00:00
Miek Gieben
c46b0e07c3
Normalize names a bit
2014-02-12 13:36:04 +00:00
Miek Gieben
89cc033428
Be much more precice in msg.Len()
...
There is still a one-off in EDNS0 records, but I'm not too bothered with
that one.
2014-02-12 12:59:42 +00:00
Miek Gieben
37406413d7
Use dLen in TSIG too
2014-02-12 12:51:13 +00:00
Miek Gieben
b595183834
Use dLen for domain name length
2014-02-12 12:50:16 +00:00
Miek Gieben
31102c38b7
Make Len() much more accurate for compressed messages.
...
Lots of changes made and bugs fixed.
2014-02-11 23:01:47 +00:00
Miek Gieben
9dcccf22da
Fold TODO in README.md
2014-02-10 20:42:52 +00:00
Miek Gieben
d0fa099d08
Document and disable the test
2014-02-10 20:28:17 +00:00
Miek Gieben
d24565edc8
Merge branch 'len'
...
Cleanup the rest and add the test.
2014-02-10 20:20:08 +00:00
Miek Gieben
21283d2192
Improve msg.Len() accuracy
...
Currently msg.Len() overshoots a _lot_ when compression is
enabled. The main problem is that once a part of a domain is found to
be compressed, the whole domain is _not_ added back to compression
dictionary.
That means if we once cache ".microsoft.com" we won't cache
"blah.microsoft.com".
Ammended a bit: put the test in dns_test.go
2014-02-10 20:16:05 +00:00
Miek Gieben
dcb0117c0a
add AUTHOR file
...
Cleanup the other files a bit.
2014-02-10 17:15:49 +00:00
Miek Gieben
8f334b52a0
Merge branch 'master' of github.com:miekg/dns
2014-02-10 15:31:20 +00:00
Miek Gieben
6293844a72
Check compression lengths
2014-02-10 12:43:38 +00:00
Miek Gieben
0cba5240c3
More tests lenght
2014-02-10 12:43:09 +00:00
Miek Gieben
372e3d55c3
More tests lenght
2014-02-10 12:29:33 +00:00
Miek Gieben
56e0bb46d8
Remove packLen() and fix bug in Len()
...
packLen() was a featureless mirror of Len(). Remove it, and just use
Len() internally too.
Fix bug in Len() too, where the length of the additional section was
not counted.
2014-02-10 12:23:53 +00:00
Miek Gieben
1f066aa6d9
Test for procent in label names
2014-02-07 10:19:14 +00:00
Miek Gieben
5ecc38c003
Better docs
2014-02-06 10:32:38 +00:00
Miek Gieben
4f6fef6777
If the TC bit is set return a valid but smaller message
...
If the TC bit is set in a message, we will probably try to parse
half a message, which will fail. To fix this just return a message
header and the question section and don't parse the rest.
2014-02-05 21:47:26 +00:00
Miek Gieben
95fd782f44
Fix documentation for these public functions
2014-02-05 21:38:12 +00:00
Miek Gieben
5eec7f362c
Merge pull request #82 from millerkil/faster-unpack
...
Use slice to build domain string for unpacking
2014-02-02 23:44:25 -08:00
Miek Gieben
fb787f0d96
Update the documentation
2014-02-02 20:30:52 +00:00
Miek Gieben
53aa7cebbf
Add test for SRV signing
2014-02-02 19:25:55 +00:00
Alex Ciuba
008c1d5916
Add domain unpacking benchmark
2014-02-01 01:29:10 -05:00
Alex Ciuba
16d6ebe1c1
Use slice to build domain string
2014-02-01 01:29:00 -05:00
Miek Gieben
dd35496669
dont care about padding for benchmark function
2014-01-29 07:56:21 +00:00
Miek Gieben
876680216e
Revert "Revert "Add benchmark for message unpacking""
...
This reverts commit ca87093b6d
.
2014-01-29 07:52:43 +00:00
Miek Gieben
509a6ff9e2
Revert "Revert "Fix benchmark alignment""
...
This reverts commit b8e6bd45be
.
2014-01-29 07:52:23 +00:00
Miek Gieben
f2f9d43da5
Revert "Revert "Add more benchmarks""
...
This reverts commit 58a3a82b8e
.
2014-01-29 07:51:36 +00:00
Miek Gieben
58a3a82b8e
Revert "Add more benchmarks"
...
This reverts commit 5a3bf3d749
.
2014-01-28 22:44:07 +00:00
Miek Gieben
b8e6bd45be
Revert "Fix benchmark alignment"
...
This reverts commit 008dfb4ee8
.
2014-01-28 22:43:57 +00:00
Miek Gieben
9ba617e870
Revert "Share the message buffer if we have room"
...
This reverts commit 17ce0cd52f
.
2014-01-28 22:43:48 +00:00
Miek Gieben
ca87093b6d
Revert "Add benchmark for message unpacking"
...
This reverts commit dc4eddaf9a
.
2014-01-28 22:43:37 +00:00
Miek Gieben
fe41b3f5b1
Fix typo and add allocated rfc number
2014-01-28 10:59:12 +00:00
Miek Gieben
57d45ae6e6
doc updates
2014-01-28 10:56:29 +00:00
Miek Gieben
e287df0604
typos
2014-01-28 10:55:31 +00:00
Miek Gieben
27abc83e6a
Merge pull request #80 from millerkil/optimize
...
A couple optimizations
2014-01-27 23:58:06 -08:00
Alex Ciuba
dc4eddaf9a
Add benchmark for message unpacking
2014-01-27 20:55:15 -05:00