Commit Graph

85 Commits

Author SHA1 Message Date
Miek Gieben 0aa3021a83 Remove all copyright notices
Use the central COPYRIGHT file.
2014-09-11 20:57:37 +01:00
Miek Gieben 06fc321c2c fmt 2014-08-30 08:45:10 +01:00
Miek Gieben 34f5a12bfc Don't crash on emtpy string in compressionLenSearch
Fixes #105
2014-08-22 08:46:24 +00:00
Miek Gieben 9f5fcf8459 Add extra length test for issue #105 2014-08-22 08:15:35 +01:00
Miek Gieben f5fe400c53 Lowercase all test output.
Add Shutdown tests as well
2014-08-19 08:39:04 +00:00
Miek Gieben 5a8fe5d5f7 Add Copy test 2014-06-06 21:10:38 +01:00
Andrew Tunnell-Jones 8772f9064c Make PackRR enforce RR data length limit
• Make rawSetRdlength return false if length would overflow
• Make PackRR assume rawSetRdlength returning false indicates an overflow
2014-04-29 05:03:01 +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 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 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 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 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
Alex Ciuba 008c1d5916 Add domain unpacking benchmark 2014-02-01 01:29:10 -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 ca87093b6d Revert "Add benchmark for message unpacking"
This reverts commit dc4eddaf9a.
2014-01-28 22:43:37 +00:00
Alex Ciuba dc4eddaf9a Add benchmark for message unpacking 2014-01-27 20:55:15 -05:00
Alex Ciuba 008dfb4ee8 Fix benchmark alignment 2014-01-27 17:40:57 -05:00
Alex Ciuba 5a3bf3d749 Add more benchmarks 2014-01-27 17:33:14 -05:00
Miek Gieben c17b6e8905 Merge pull request #68 from soh335/fix/empty-txt
if txt rdlength is 0, not read anymore
2014-01-04 06:41:58 -08:00
Miek Gieben 5b8a651bf0 Fix typo in comment 2014-01-04 11:53:50 +00:00
Miek Gieben 9e73cb688f Fix NAPTR's length function
Add the 3 bytes for the length byte of the strings.

Close issue #67.
2014-01-04 11:30:20 +00:00
soh335 e8a5f90957 if txt rdlength is 0, not read anymore 2014-01-04 17:30:08 +09:00
Miek Gieben 675f170a3d Fix axfr tsig 2013-10-12 14:00:10 +01:00
Miek Gieben bf37f92d4a Some test tweaking 2013-09-29 11:30:03 +01:00
Miek Gieben 29232adf26 better comment 2013-08-31 20:26:24 +01:00
Miek Gieben b6a2d1fb5e Allow empty rdata in records
Empty or no rdata is allowed for dynamic updates, so test if this
works for packing/unpacking. It only fails for TSIG (which is
never seen in zone files), SOA (which is not seen like this in dyn.
updates) and WKS (just an old record).
2013-08-31 20:24:52 +01:00
Miek Gieben 401a5e6429 Add unpack test too 2013-08-26 21:24:06 -07:00
Miek Gieben fdcdc6dbf6 Add test to zero rdata (for dyn updates)
This triggerd a bunch of failures, the most important one
is the packing and zero length domain name now works.
2013-08-26 21:11:24 -07:00
Miek Gieben cb9ec711f5 Add (failing) test for zero rdata 2013-08-25 21:38:10 -07:00
Miek Gieben 3f40afaafd Print the actual error 2013-06-27 20:01:32 +01:00
Miek Gieben 53789814d0 Add benchmarking tests - Len() is ~4 times after then packing and getting a length from that 2013-06-27 09:47:53 +00:00
Miek Gieben 1ad76fe65b Added packLen
packLen() returns the length of an uncompressed packet buffer, this
is used when packing a packet. This is needed for compression. When
compression is used, we first create the full packet and *then*
compress it. If we use Len() which accounts for compression, we can
get buffer overruns, when packing the (then still uncompressed) packet.
2013-06-26 22:18:09 +01:00
Ray Bejjani d83e816f30 Changed TestLenCompress to use error inducing name
Long labels cause a packing out of bounds error. It is thrown at msg.go:268 in
the PackDomain function. It happens with messages of any construction (no RR
data, some RR data etc.).
2013-06-26 20:38:55 +01:00
Miek Gieben b9f82b0a36 Cherry-pick specific hunks 2013-06-26 20:33:01 +01:00
Miek Gieben 38ea608d79 Rename the Label* functions
SplitLabels -> SplitDomainName
CompareLabels -> CompareDomainName
LenLabels -> CountLabel
          -> NextLabel was added as a simple iterator-like function
2013-06-22 07:21:15 +00:00
Miek Gieben f595bf7a06 Set license on test files 2013-05-12 16:09:52 +02:00
Miek Gieben 6bd90e04c3 Fix the test 2013-02-08 16:47:21 +01:00
Miek Gieben 625de563d0 Convert an RR to its unknown representation 2013-01-30 15:55:50 +01:00
Miek Gieben 235e892dfc Rename the RR types drop the RR_ prefix
This is also done in the official Go library. It also make the
code shorter.
2012-12-09 19:23:25 +01:00
Miek Gieben 4c6d89f727 PackDomainName: check for 255 or more octects
Adhire to the spec.
2012-12-06 10:48:55 +01:00