Commit Graph

183 Commits

Author SHA1 Message Date
Miek Gieben 1948cd2a90 Use go vetted struct tags
They had the form: "domain-name", now they are key value pairs (key is
always dns: `dns:"domain-name"`
2012-04-29 21:55:29 +02:00
Miek Gieben 7f78754c1d Some tweaks about errors 2012-04-18 14:06:10 +02:00
Miek Gieben d75a9592bc small doc update 2012-03-27 11:02:30 +02:00
Miek Gieben 9f14f2d5ab Documentation updates 2012-03-08 20:47:45 +01:00
Miek Gieben 536ac17f11 doc tweak 2012-03-03 18:07:36 +01:00
Miek Gieben e816e64e3e doc tweaks, Len() tweaks 2012-02-28 20:43:08 +01:00
Miek Gieben 89c05b4f74 gofmt 2012-02-23 19:37:08 +01:00
Miek Gieben c6042c4ce8 Work on copy of the header when validating 2012-02-23 12:46:39 +01:00
Miek Gieben 3b4840e847 typo in the docs 2012-02-19 22:38:13 +01:00
Miek Gieben 9c5c2ee96f Fix very large SOA/TTL values 2012-02-19 18:36:59 +01:00
Miek Gieben 22b0ae7ee3 typo 2012-02-16 18:06:50 +01:00
Miek Gieben 76c087f5ba docs for the RR interface 2012-02-15 23:34:41 +01:00
Miek Gieben 1637995ed0 Documentation updates 2012-02-15 13:10:02 +01:00
Miek Gieben ea6da640d7 Documentation cleanup 2012-02-12 11:17:52 +01:00
Miek Gieben 77b60231e7 If we add a dot to a name, be sure to remove one from the length 2012-02-05 11:33:55 +01:00
Miek Gieben 3ebacbaac8 udp msg size 2012-01-29 00:21:12 +01:00
Miek Gieben 19f8d266b5 Remove the RRset type - only add obvious stuff 2012-01-28 01:14:07 +01:00
Miek Gieben 5ccd114819 Add a nsec3 Match() function 2012-01-22 10:52:06 +01:00
Miek Gieben 9f3a1c1f13 Documentation and make ParseKey private (parseKey) 2012-01-16 21:44:49 +01:00
Miek Gieben d7400fd503 documentation 2012-01-16 21:20:21 +01:00
Miek Gieben 81afa38ecf increase recv buffer for edns 2012-01-16 10:33:08 +01:00
Miek Gieben 4082f7bd7b Even smaller input buffer 2012-01-15 15:57:19 +01:00
Miek Gieben 798f450cbe Set receiving buf size to 512b 2012-01-15 15:50:02 +01:00
Miek Gieben ee11948fcb Make the name more descriptive 2012-01-13 11:38:08 +01:00
Miek Gieben 0509df509e gofmt 2012-01-12 23:17:34 +01:00
Miek Gieben 189de95957 Make the udp msg size configurable 2012-01-12 22:47:36 +01:00
Miek Gieben b5d73f1eff Implement compressible domain names 2012-01-11 11:19:07 +01:00
Miek Gieben 15d82f0b34 Fix the size -- was counting the labels, not the bytes 2012-01-10 13:47:34 +01:00
Miek Gieben bacfa5a80c A Len() to RR interface
This isn't yet finished, but it helps in asserting the amount of
space to alloc when packing a message
2012-01-10 10:43:28 +01:00
Miek Gieben ecfd5451a9 Remove the Labels() function.
This is now handled inside IsDomainName, which really parses
the name and then (also) returns the number of labels found.
2012-01-08 15:54:33 +01:00
Miek Gieben 9dbfa8a443 Fix the async documentation 2012-01-08 15:33:15 +01:00
Miek Gieben 0322d3a9da Fix $ORIGIN in zonefiles
also check if a dname isn't fq, and add $ORIGIN is not.
2012-01-08 14:06:58 +01:00
Miek Gieben 5d99c04ac3 Fix rootname print in q section 2011-12-20 11:45:31 +01:00
Miek Gieben d2a064e390 Update in the documentation 2011-12-16 19:35:37 +01:00
Miek Gieben de3f0f3903 Documentation and make the random better 2011-12-16 19:28:35 +01:00
Miek Gieben 235dee6a0d Fix the parse tests once more 2011-12-16 10:26:32 +01:00
Miek Gieben 06ae052c32 Implement returning errors from the scanner 2011-12-16 10:06:28 +01:00
Miek Gieben 35a1e137e2 More parsing fixes 2011-12-15 22:40:07 +01:00
Miek Gieben f1ff334ab1 Rename DefaultTTL to DefaulTtl
This is more inline with the rest
2011-12-14 08:42:53 +01:00
Miek Gieben ae17028dd0 Use fqdns 2011-12-09 22:45:13 +01:00
Miek Gieben 22a467e718 Fixes the latest weekly 2011-11-02 23:06:54 +01:00
Miek Gieben 6e403621e1 Fix NSID (or OPT option code 3) 2011-09-26 09:11:14 +02:00
Miek Gieben 6f78219c22 Documentation updates 2011-09-11 20:47:25 +02:00
Miek Gieben bec4153541 slight updates to the TODO 2011-09-10 14:48:22 +02:00
Miek Gieben 19bf874769 Use a new type to send back request,answer
a type Exchange has been added, which makes communicating with
the resolver more strait forward.

This will also be used in the *xfr functions.
2011-09-10 14:26:08 +02:00
Taral 220ad18ded Remove redundant sorting and fix small error 2011-09-08 12:14:06 -07:00
Miek Gieben ec11e6abd3 documentation 2011-09-08 19:28:00 +02:00
Miek Gieben c64f506103 Remove a packStruct - should improve performance 2011-08-08 15:28:19 +02:00
Miek Gieben 4925a831aa move zoneMatch to dns.go 2011-07-31 09:53:54 +02:00
Miek Gieben be10e40045 Fix Pop()
Need to check which of the rrs, rrsigs of nxt is actually filled
with the data and pop that.
2011-07-29 13:16:27 +02:00
Miek Gieben 5df752fef7 Smaller tweaks 2011-07-28 23:39:31 +02:00
Miek Gieben caa1502c1e Add much more complex zone structure
A zone is stored in a
map[string]map[int]*ZRRset

where string is the qname and int (in the second map) is
qclass * <large number> + qtype, thereby making it unique.

ZRRset holds:
    RRs     RRset
    RRsigs  RRset
    Nsec    RR
    Nsec3   RR
    Glue    bool

Which holds the RRset for the zone contents. This is grouped
together for DNSSEC purposes, but also helps in non-DNSSEC zones.
(There is of course a increase in memory usage).
2011-07-28 22:47:55 +02:00
Miek Gieben b2a6356596 Fix opt pseudo section stuff 2011-07-25 11:24:26 +02:00
Miek Gieben 4671072027 Error handling
Handle semantic errors in the input stream.
Try to use Ragel's error handling when seeing a non-supported
class. This does not work yet.
2011-07-24 17:08:33 +02:00
Miek Gieben b56e9b4e04 documentation 2011-07-23 23:41:24 +02:00
Miek Gieben 9b1e7b4b3d documentation
make Str_rr and Str_class private, prolly only needed
for parsing
2011-07-23 23:15:40 +02:00
Miek Gieben 7cc28a94e9 Fix funkensturm signing
make LabelCount public account.
2011-07-06 21:50:23 +02:00
Miek Gieben 077c1ce596 Some documentation update 2011-07-05 21:08:22 +02:00
Miek Gieben b0a9805be9 Documentation 2011-07-04 21:32:39 +02:00
Miek Gieben 5de08ff3dc Update doc and set recursion = true in SetQuestion 2011-07-04 21:28:30 +02:00
Miek Gieben 3c10506681 start with the documentation 2011-04-17 22:14:26 +02:00
Miek Gieben d7b332725c axfr should be fixed 2011-04-17 22:03:36 +02:00
Miek Gieben 172331a23f completely break the api 2011-04-02 09:22:05 +02:00
Miek Gieben 686cd05417 rename QuerySimple to SimpleQuery
add a default query handler 'HandlerQuery' that can be
used.
2011-03-31 10:31:17 +02:00
Miek Gieben 8a4647ec22 documentation 2011-03-30 15:35:49 +02:00
Miek Gieben e5a769baf0 Fix up API and documentation 2011-03-30 14:54:43 +02:00
Miek Gieben 0449ff62a2 seeing some light in the query API
global channels look to be helpfull
2011-03-30 11:14:36 +02:00
Miek Gieben 879e6dcda8 Clean ups 2011-03-29 11:17:43 +02:00
Miek Gieben 1e9a8df857 Update docs and fix mx example 2011-03-29 10:41:57 +02:00
Miek Gieben 2d7a1cddeb Add QuerySimple
Some examples are working again. Things are getting
better.

Still need to think about a generic Config (ClientConfig)
for parsing the /etc/resolv.conf
2011-03-29 10:15:42 +02:00
Miek Gieben b4e28e3d56 Finish the new query API 2011-03-28 16:57:04 +02:00
Miek Gieben 97a03a9bd5 remove the old resolver structure 2011-03-28 16:03:47 +02:00
Miek Gieben 2b7d2203fb API is taking shape 2011-03-28 14:45:40 +02:00
Miek Gieben 573b6d3460 use Query in resolver 2011-03-28 11:22:36 +02:00
Miek Gieben 5c28696357 API works, but it is not very nice (yet) 2011-03-28 10:59:06 +02:00
Miek Gieben 7cc589d52a Add mangle to Conn 2011-03-28 10:39:01 +02:00
Miek Gieben f9088e1e75 Make the new resolver API better 2011-03-28 10:33:57 +02:00
Miek Gieben 135772de9f complete rewrite the resolver side
make it mirror the server side and thus
async and concurrent
2011-03-28 10:01:10 +02:00
Miek Gieben ac0f4afcc9 doc updates 2011-03-27 11:46:15 +02:00
Miek Gieben 55c41c82b7 Add more Conn wrappers 2011-03-27 11:45:01 +02:00
Miek Gieben 4029c4153c Use defaulTTL, more Go like 2011-03-25 17:47:35 +01:00
Miek Gieben 8aa88a0bd3 normalize errors 2011-03-25 11:19:35 +01:00
Miek Gieben 15518a578f Lowlevel read/write improvements 2011-03-25 09:58:14 +01:00
Miek Gieben b1363094de Fix TCP reading 2011-03-24 18:07:38 +01:00
Miek Gieben f44bf2d656 Formatting 2011-03-24 09:24:24 +01:00
Miek Gieben 93a7feb0a7 small doc updates 2011-03-24 09:16:33 +01:00
Miek Gieben 25bdf43f06 more documentation updates 2011-03-23 19:37:07 +01:00
Miek Gieben ee88f57c1b add documentation 2011-03-23 17:41:52 +01:00
Miek Gieben 8b70e31c41 Fix examples and API additions 2011-03-23 09:50:38 +01:00
Miek Gieben a7a8b616f0 fix reflect 2011-03-21 22:53:15 +01:00
Miek Gieben 72c6ff37eb Fix error handling 2011-03-21 17:43:03 +01:00
Miek Gieben 90a1d813d9 Fix rereading tcp 2011-03-21 14:20:46 +01:00
Miek Gieben 6aaa5acd76 tsig nicely abstracted. Still bugs present though 2011-03-21 11:39:04 +01:00
Miek Gieben 9bc0f3ed6b More TSIG stuff 2011-03-21 10:51:28 +01:00
Miek Gieben 2c5184ff11 Add tsig stuff 2011-03-20 20:55:27 +01:00
Miek Gieben ab035e636f debugging 2011-03-20 20:16:10 +01:00
Miek Gieben b1f63f57c4 Read/Write works, but axfr still fails 2011-03-20 19:58:55 +01:00
Miek Gieben de9a1da6aa Add lowlevel read/write primatives - and make it much more Go-like 2011-03-20 16:52:10 +01:00
Miek Gieben 496ab892d8 New does help 2011-03-13 14:51:02 +01:00
Miek Gieben e6dc03baeb Shuffle the dns constant to dns.go 2011-02-28 10:42:03 +01:00