Miek Gieben
e162e9bfb1
Use *Zone instead of Zone
2011-07-29 21:37:58 +02:00
Miek Gieben
5769966167
also add the packages that are now neeed
2011-07-29 20:07:27 +02:00
Miek Gieben
7e644793fe
Add nsec3 search functions
2011-07-29 20:06:52 +02:00
Miek Gieben
e6fb6095c4
Thinking about splitting up the package
2011-07-29 20:04:15 +02:00
Miek Gieben
66ea81043c
Implement fully featured nameserver.
...
Currently:
* does positive DNSSEC (no NXDOMAIN)
* does plain NXDOMAIN
* Name error
* reasonable fast: 7000+ qps
2011-07-29 16:14:04 +02:00
Miek Gieben
0499ffeb83
cannot handle comments on that spot (yet) miek.nl.signed_test
2011-07-29 16:11:04 +02:00
Miek Gieben
6931e1e215
Adapt ns to the new (fast) zone structure
2011-07-29 14:15:59 +02:00
Miek Gieben
a5bec02e96
make lookup LookupName
2011-07-29 13:44:35 +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
6f5c039f3f
Add id.server and authors.server to ns
2011-07-29 12:24:41 +02:00
Miek Gieben
eb3a40f5aa
kill atoi and just use the strconv.Atoui directly
2011-07-29 12:18:49 +02:00
Miek Gieben
33fbece4ca
Add txt and fixup ds, ta and dlv
2011-07-29 12:18:20 +02:00
Miek Gieben
9cfece64db
Only 1 nxt is needed
2011-07-29 11:00:47 +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
51d347a0d5
implement cname chasing
2011-07-27 13:12:14 +02:00
Miek Gieben
5087f5a993
SMall fixes
2011-07-26 21:41:24 +02:00
Miek Gieben
e7a8eece9b
Fix a few bugs
2011-07-26 20:49:13 +02:00
Miek Gieben
00ec1b5f8e
small tweaks
2011-07-26 20:01:20 +02:00
Miek Gieben
c7f90f58cc
Seems to be working
2011-07-26 20:00:08 +02:00
Miek Gieben
47cc5b3e77
Fixes
2011-07-26 19:16:28 +02:00
Miek Gieben
2a19a54a9c
add a nameserver implementation
...
Ans some fixes and tweaks in the core code.
2011-07-26 19:16:02 +02:00
Miek Gieben
44a48b10f3
start nameserver
2011-07-25 14:43:03 +02:00
Miek Gieben
b2a6356596
Fix opt pseudo section stuff
2011-07-25 11:24:26 +02:00
Miek Gieben
1914a36ab7
implement show-query
2011-07-25 08:58:34 +02:00
Miek Gieben
96ddebf335
add miek.nl.signed as a test zone
...
Add support for more RRs - I can now parse my own zone
2011-07-24 22:21:48 +02:00
Miek Gieben
fc2516e3f4
Error handling for DNSKEY
2011-07-24 22:01:10 +02:00
Miek Gieben
282feff62e
add NSEC3PARAM
2011-07-24 21:40:04 +02:00
Miek Gieben
00f8254ae1
Fix parsing of RRSIGs
2011-07-24 21:29:16 +02:00
Miek Gieben
c52f05f9f5
More error checking
2011-07-24 17:32:41 +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
f38060d359
Use smaller buffer again
2011-07-24 13:54:34 +02:00
Miek Gieben
397a12d5b6
cleanup the todo
2011-07-24 10:45:03 +02:00
Miek Gieben
8938697c5b
move it
2011-07-24 10:38:46 +02:00
Miek Gieben
da0603089a
gofmt -w
2011-07-23 23:43:43 +02:00
Miek Gieben
b56e9b4e04
documentation
2011-07-23 23:41:24 +02:00
Miek Gieben
a0b011799e
documentation
2011-07-23 23:32:42 +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
0dcfa0b427
Kill SetString
...
Create a NewRR that creates a new RR from a string.
FIx the tests to relfect this
2011-07-23 22:26:50 +02:00
Miek Gieben
31ab707ea6
make it simpler
2011-07-23 09:21:24 +02:00
Miek Gieben
92291b1575
Documentation and some small tweaks
2011-07-23 08:59:58 +02:00
Miek Gieben
dca86ec149
Documentation
2011-07-23 08:54:44 +02:00
Miek Gieben
b7e23f73ed
fix key2ds
2011-07-23 00:04:25 +02:00
Miek Gieben
f515ad2f4e
small todo update
2011-07-23 00:01:29 +02:00
Miek Gieben
3eae3d90e7
Small optimizations, down to 1.29s for 50K RRs
2011-07-22 23:57:56 +02:00
Miek Gieben
a1a0034733
More Go like
...
Make a Parser type and define methods on that.
* Zone() parse and return entire zone
* RR() parse and return 1 RR
* PrivateKey parse a private key file
2011-07-22 23:51:30 +02:00
Miek Gieben
2a8d7f9694
Make the API more Go like
2011-07-22 23:28:04 +02:00
Miek Gieben
db5b40c000
Reset _IOBUF
2011-07-22 22:16:56 +02:00
Miek Gieben
4f6b1f7ee2
Correct the count
2011-07-22 22:07:45 +02:00
Miek Gieben
c2a89d3184
Tweaks for parsing
2011-07-22 22:06:07 +02:00