Miek Gieben
68d2f49caa
another nil test
2011-08-08 10:30:28 +02:00
Miek Gieben
91fdd69c80
no panic in the lib
2011-08-08 10:29:30 +02:00
Miek Gieben
64715cc563
Extra nil checks
...
Now that parsing is broken. Fix the code to do nil checks
which now surface.
2011-08-08 10:20:52 +02:00
Miek Gieben
2a596f60b9
impl. the recent changes from the reflect package
2011-08-08 10:15:24 +02:00
Miek Gieben
d6716f693d
impl. the recent changes from the reflect package
2011-08-08 09:49:25 +02:00
Miek Gieben
a3bd25fad3
remove this
2011-08-04 15:46:39 +02:00
Miek Gieben
27948bb9f9
Use uint16 instead of int
2011-08-04 15:13:10 +02:00
Miek Gieben
a44eb54de2
put defer back in
2011-08-04 13:59:15 +02:00
Miek Gieben
1032e7593f
defer add a small performance penalty
2011-08-04 13:49:40 +02:00
Miek Gieben
c170e0bbaa
Eliminate allocations when using ExchangeBuffer()
2011-08-04 13:17:36 +02:00
Miek Gieben
069c5237f5
added
2011-08-04 11:27:56 +02:00
Miek Gieben
dfbfa8b452
still need the copy
2011-08-03 15:05:13 +02:00
Miek Gieben
4fbdf56f5f
implement a (working) TTL for the cache and use a mutex
2011-08-03 14:50:15 +02:00
Miek Gieben
70d6265e77
Looks like a cache, quacks like a cache.. its a cache. Not RCU though
2011-08-03 10:35:19 +02:00
Miek Gieben
16c788e42a
more
2011-08-02 14:28:20 +02:00
Miek Gieben
2d9e619c01
Upgrade to r59 of Go this means parsing is broken now
...
Ragel does not support newer versions of Go. But I do want to
upgrade to them. So parsing from strings has been disabled and
will be re-enabled when Ragel 7 is out
2011-08-02 09:06:15 +02:00
Miek Gieben
5e94ba32fd
Fix the code a bit
2011-08-01 20:07:50 +02:00
Miek Gieben
9330f16c5c
some minor tweaks
2011-08-01 14:13:13 +02:00
Miek Gieben
38d15b76e2
doc
2011-08-01 14:09:41 +02:00
Miek Gieben
9d4cbdbcc8
More docs
2011-08-01 14:00:18 +02:00
Miek Gieben
a460c45d2e
just use println
2011-08-01 13:59:02 +02:00
Miek Gieben
0565d0bddf
Even more simpler
2011-08-01 13:26:29 +02:00
Miek Gieben
327c9870c4
Fix funkensturm and make it simpler
2011-08-01 13:15:15 +02:00
Miek Gieben
ba30caf3b3
documentation
2011-07-31 22:29:50 +02:00
Miek Gieben
9bee591bc0
Make Funkensturm somewhat better
2011-07-31 16:09:48 +02:00
Miek Gieben
7cf37d9d6f
Add another funkensturm example
...
This time a reverse proxy.
Funkensturm itself can also use a rewrite to make it nicer
2011-07-31 15:36:07 +02:00
Miek Gieben
faaf0d6b8f
better documentation
2011-07-31 14:33:13 +02:00
Miek Gieben
4925a831aa
move zoneMatch to dns.go
2011-07-31 09:53:54 +02:00
Miek Gieben
770f580540
added
2011-07-31 09:14:54 +02:00
Miek Gieben
fae8f0f0ed
add debugging and profilling
2011-07-30 23:15:30 +02:00
Miek Gieben
05b7ac53dd
Create qnamelist for nsec/nsec3 handling
2011-07-30 23:05:34 +02:00
Miek Gieben
e016536cdc
Add nsec(3) support in the core zone structure
2011-07-29 22:06:09 +02:00
Miek Gieben
1c5460413d
Make room for a sorted list of owners
2011-07-29 21:52:58 +02:00
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