Commit Graph

209 Commits

Author SHA1 Message Date
Miek Gieben b720003623 make api smaller 2012-08-17 08:31:38 +02:00
Miek Gieben 73b6d37885 cleanup api, dont export Year68 2012-08-17 08:29:45 +02:00
Miek Gieben 1958fd2031 Fix compile errors 2012-08-08 09:45:31 +02:00
Miek Gieben 946e3a09ca Rename Exchange struct to XfrMsg - which better tells what it does 2012-08-08 09:44:34 +02:00
Miek Gieben 7a885b0c6b fqdn the handlers 2012-08-04 19:40:09 -07:00
Miek Gieben 534433a714 gofmt -w 2012-06-20 20:16:36 +02:00
Miek Gieben e6fca0be3f Actually copy the RR for DNSSEC validation.
This is needed because we need to fiddle with the TTL and sometimes
even need to lowercase the rdata. We dont want this to propagate
to the original RRs
2012-06-20 19:16:54 +02:00
Miek Gieben 01442e58af more Copy() functions 2012-06-20 17:44:18 +02:00
Miek Gieben f48dba4ad1 Add Copy to all RRs 2012-06-20 11:56:25 +02:00
Miek Gieben 6930a3a307 Tweaks for get a secure lookup going 2012-06-05 09:31:50 +02:00
Miek Gieben fa2c9fd8fa No use on a per-query basis 2012-06-04 19:39:02 +02:00
Miek Gieben 53b065793b More preparation for the root 2012-06-03 09:35:39 +02:00
Miek Gieben 9c4c5f5369 remove NewClient from the code 2012-05-26 10:28:32 +02:00
Miek Gieben d0e4f0409a remove these docs from here 2012-05-15 17:05:18 +02:00
Miek Gieben f0154aa0c2 Fix and test rfc 1982 arithmetic 2012-05-15 12:24:57 +02:00
Miek Gieben 0cfe2d6a43 Make copy private 2012-05-12 20:06:52 +02:00
Miek Gieben 614aa87ab2 Add a copy function for RRHeader - use this when validating 2012-05-11 15:03:49 +02:00
Miek Gieben 95c1154930 documentation 2012-05-08 14:17:17 +02:00
Miek Gieben 2385ca18a3 Cleanups and documentation 2012-05-08 13:39:57 +02:00
Miek Gieben fdc0d6924d Documentation 2012-05-05 20:47:23 +02:00
Miek Gieben c872bb18c3 update the documentation 2012-05-05 17:45:54 +02:00
Miek Gieben c96d86da1f Add remote address too 2012-05-05 17:37:33 +02:00
Miek Gieben ed1c8fa812 Put the rrt info the Exchange struct 2012-05-05 09:56:45 +02:00
Miek Gieben 3b4800cbbf doc 2012-05-02 08:04:33 +02:00
Miek Gieben 9c1597b85b doc 2012-05-02 08:00:07 +02:00
Miek Gieben 82905763ee docs 2012-05-02 07:57:35 +02:00
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