Commit Graph

43 Commits

Author SHA1 Message Date
Miek Gieben
e6b37d00af Cleanup and removals (#377)
* Cleanup and removals

Gut rawmsg.go as most functions are not used. Reword some documentation.
Add more types to be checked for name compression.

* Yeah, we do use these

* Remove this function as well - only used one
2016-06-13 19:44:38 +01:00
Michael Haro
a465e84f54 Use encoding/binary's conversion functions when possible. (#364)
* Remove {un,}packUint{16,32}Msg functions.

unpackUint16Msg unpackUint32Msg packUint16Msg packUint32Msg implemented
functionality that is part of the encoding/binary package.

* Use encoding/binary's encoding in more places.
2016-06-08 16:38:42 +01:00
Miek Gieben
475ab80867 Remove (most) reflection
Remove the use of reflection when packing and unpacking, instead
generate all the pack and unpack functions using msg_generate.
This will generate zmsg.go which in turn calls the helper functions from
msg_helper.go.

This increases the speed by about ~30% while cutting back on memory
usage. Not all RRs are using it, but that will be rectified in upcoming
PR.

Most of the speed increase is in the header/question section parsing.
These functions *are* not generated, but straight forward enough. The
implementation can be found in msg.go.

The new code has been fuzzed by go-fuzz, which turned up some issues.

All files that started with 'z', and not autogenerated were renamed,
i.e. zscan.go is now scan.go.

Reflection is still used, in subsequent PRs it will be removed entirely.
2016-06-03 12:45:22 +01:00
Miek Gieben
aed88e096f Remove the duplicate word length from the comment 2015-12-31 08:17:21 +00:00
Shawn Smith
94231e71fe Fix typos 2015-12-31 14:16:30 +09:00
Miek Gieben
0aa3021a83 Remove all copyright notices
Use the central COPYRIGHT file.
2014-09-11 20:57:37 +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
5d094e6e2d gofmt 2013-06-14 19:42:55 +01:00
Miek Gieben
9ee7c27e18 Fix rawSetRdlength
When searching for the start of the rdata, the offset wasn't properly
calculated. This only impacted names with \DDD in it (weirdly enough).
2013-06-14 11:35:06 +00:00
Miek Gieben
98b677a97c Update the copy right for the original GO files 2013-05-12 16:07:06 +02:00
Miek Gieben
afd4d24572 doc typo 2013-04-07 22:05:48 +01:00
Miek Gieben
22c2f9078e make them return booleans 2012-08-31 21:03:31 +02:00
Miek Gieben
a20a5a9b06 make them return booleans 2012-08-31 21:03:03 +02:00
Miek Gieben
e9ea2d7750 Fix more robust, but also nack more about non qualified names 2012-08-31 20:57:16 +02:00
Miek Gieben
e4d9e184da Dont export any raw function 2012-08-24 15:06:15 +02:00
Miek Gieben
845f4a6992 dont export - minimize api 2012-08-24 12:42:41 +02:00
Miek Gieben
7562c68094 documentation updates 2012-05-03 08:53:38 +02:00
Miek Gieben
99d26fb386 documentation 2012-03-18 22:41:29 +01:00
Miek Gieben
3232814d1b Fix client side TSIG
Redesign of TSIG. Validation is on the TOOD - this can be
done in the same way as in the server.
2012-03-01 22:40:34 +01:00
Miek Gieben
b7f997cc6e Fix setting the rdlength for compressed names
RawSetRdlength was working with a 0xC00 bitmask which
should have been 0xC0.
2012-02-26 18:23:21 +01:00
Miek Gieben
3b4840e847 typo in the docs 2012-02-19 22:38:13 +01:00
Miek Gieben
18388eda25 dont need this either 2012-01-12 21:33:14 +01:00
Miek Gieben
7ddb5feb69 RawRdlength seems to work; 2012-01-12 21:10:29 +01:00
Miek Gieben
92a51b4374 Who wrote what 2012-01-12 10:53:19 +01:00
Miek Gieben
374e495534 More evil records to parse 2012-01-12 10:50:01 +01:00
Miek Gieben
76efc275a3 Add RawSetRdlength back in 2012-01-11 16:02:05 +01:00
Miek Gieben
b5d73f1eff Implement compressible domain names 2012-01-11 11:19:07 +01:00
Miek Gieben
974c28d1b1 More fixes for compression 2012-01-11 11:13:17 +01:00
Miek Gieben
8cc24a1b9b Some tweaks 2012-01-10 10:54:39 +01:00
Miek Gieben
d7a57ee174 Some tweaks 2012-01-10 09:02:13 +01:00
Miek Gieben
28f5e6c1ed Last few fixes and remove debugging prints 2012-01-10 08:55:55 +01:00
Miek Gieben
cedf11f27b Working compression algo 2012-01-10 08:52:18 +01:00
Miek Gieben
1870766996 more stuff 2012-01-09 23:03:02 +01:00
Miek Gieben
f90270014c This is a working name compression 2012-01-09 21:27:31 +01:00
Miek Gieben
848a337f1d Detect which name are applicable for compression 2012-01-09 16:24:19 +01:00
Miek Gieben
cce190ee4a remove the faulty function 2011-12-17 20:14:57 +01:00
Miek Gieben
b5c6ec8e5f Remove the non-working RawSetRdlength
Didn't work
2011-12-17 20:14:10 +01:00
Taral
c1889c778d gofmt (excluding _examples) 2011-11-27 21:03:21 -08:00
Miek Gieben
6e403621e1 Fix NSID (or OPT option code 3) 2011-09-26 09:11:14 +02:00
Miek Gieben
d59c57364a doc 2011-09-01 08:35:08 +02:00
Miek Gieben
7d2aabea76 re-add qperf 2011-08-08 16:29:13 +02:00
Miek Gieben
c64f506103 Remove a packStruct - should improve performance 2011-08-08 15:28:19 +02:00
Miek Gieben
982f277a44 kill a packStruct 2011-08-08 14:09:05 +02:00