Commit Graph

280 Commits

Author SHA1 Message Date
Miek Gieben 90a2076d8d We were dialing twice 2012-08-31 14:55:47 +02:00
Miek Gieben 9255ad61ac outgoing xfr works, but not for my Go code 2012-08-28 21:36:25 +02:00
Miek Gieben 68961f2f5b Make the IsTsig and IsEdn0 more usefull by returning the record 2012-08-25 11:24:01 +02:00
Miek Gieben 15f03a72fb Not needed 2012-08-23 10:33:33 +02:00
Miek Gieben a8b3c8139b Clean up the client 2012-08-17 08:45:26 +02:00
Miek Gieben b720003623 make api smaller 2012-08-17 08:31:38 +02:00
Miek Gieben 1958fd2031 Fix compile errors 2012-08-08 09:45:31 +02:00
Miek Gieben a282683f7c Add DoRtt 2012-08-08 09:38:23 +02:00
Miek Gieben 37ff3f9f84 Add DROP and READXFR 2012-08-07 12:33:31 +02:00
Miek Gieben cf84dce538 Update the todo 2012-08-06 20:39:35 +02:00
Miek Gieben eec679d102 Remove hijacked 2012-08-06 20:34:09 +02:00
Miek Gieben 9ac8d2d7de RequestWriter can go too 2012-08-06 20:09:45 +02:00
Miek Gieben 7de64f0dda remove all the async query stuff in favor of the new Do() 2012-08-06 20:08:48 +02:00
Miek Gieben f090b34c40 Use the new api - now on to fixing Tsig 2012-08-06 20:03:46 +02:00
Miek Gieben e628564f33 Fix attempts in the client 2012-08-05 18:36:36 +02:00
Miek Gieben 51e13a15c9 snapshot 2012-08-05 18:13:23 +02:00
Miek Gieben a113c7acd8 bug fix 2012-07-05 15:37:06 +02:00
Miek Gieben 6930a3a307 Tweaks for get a secure lookup going 2012-06-05 09:31:50 +02:00
Miek Gieben 53b065793b More preparation for the root 2012-06-03 09:35:39 +02:00
Miek Gieben bb376b18b3 Add size received to a pkt 2012-06-01 10:05:27 +02:00
Miek Gieben 530d66a85b Set the channels in Do() 2012-05-26 12:02:37 +02:00
Miek Gieben 9c4c5f5369 remove NewClient from the code 2012-05-26 10:28:32 +02:00
Miek Gieben 458a74b8ce remove the need for NewClient() 2012-05-26 10:24:47 +02:00
Miek Gieben eb7b7c9745 fix udp/udp4/udp6 2012-05-22 20:15:30 +02:00
Miek Gieben da983acc37 documentation 2012-05-22 20:14:15 +02:00
Miek Gieben c84b165dee fix examples 2012-05-22 08:51:30 +02:00
Miek Gieben f3bb703019 gofmt 2012-05-22 08:48:26 +02:00
Miek Gieben 3e607a3c64 again better naming 2012-05-22 08:47:47 +02:00
Miek Gieben fac9182aa6 better names 2012-05-21 22:06:58 +02:00
Miek Gieben 06d424549e Make the default async queries more simpler to use
If you don't want to setup your own channels things should
now be simpler. Still the power for eleborate setups is there.
2012-05-21 20:58:41 +02:00
Miek Gieben 37a8bdfec0 use default Incoming channel 2012-05-21 20:18:13 +02:00
Miek Gieben 39bfd06e0f create default reply chan 2012-05-21 19:44:01 +02:00
Miek Gieben 6d9ac0b3de Force v6 or v4 2012-05-21 15:45:26 +02:00
Miek Gieben 4ec99b2dec Fix examples 2012-05-21 14:56:14 +02:00
Miek Gieben 0ff492af57 fix documentation 2012-05-18 19:41:20 +02:00
Miek Gieben 95c1154930 documentation 2012-05-08 14:17:17 +02:00
Miek Gieben b37c5b4646 more documenation 2012-05-08 14:01:58 +02:00
Miek Gieben 2574856aa6 Add RemoteAddr() to the RequestWriter interface 2012-05-08 13:51:12 +02:00
Miek Gieben 1abdeb80b4 docs 2012-05-07 15:53:35 +02:00
Miek Gieben 3989e8df9c Create a exchangefull 2012-05-07 15:50:13 +02:00
Miek Gieben fdc0d6924d Documentation 2012-05-05 20:47:23 +02:00
Miek Gieben c96d86da1f Add remote address too 2012-05-05 17:37:33 +02:00
Miek Gieben d36ee08216 Fix all the examples 2012-05-05 16:09:57 +02:00
Miek Gieben 86b08d4a0e Slight tweaks 2012-05-05 10:01:56 +02:00
Miek Gieben ed1c8fa812 Put the rrt info the Exchange struct 2012-05-05 09:56:45 +02:00
Miek Gieben fc599d23fe Save rtts for clients 2012-05-04 23:18:29 +02:00
Miek Gieben 874787c537 Allow deregistration of handler
Implemented in both the server and client.
Renamed to client function to match the server side functions
Example progs need to be "ported" as this *is* an API change.
2012-03-26 23:15:15 +02:00
Miek Gieben c53cddf38c TSIG overhauled
This lead to some changes in the Write() function. Both
server side and client side are now more similar.
2012-03-04 21:00:09 +01:00
Miek Gieben 2806def5c0 document the interface better 2012-03-04 14:53:57 +01:00
Miek Gieben 1744a80850 add a TsigStatus to the client as well
Bring server and client side more inline
with each other. For a client we also
use TsigStatus() to retrieve the tsig info.
2012-03-04 14:47:20 +01:00
Miek Gieben c5465127f3 Fix non tsig queries 2012-03-02 21:19:37 +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 fd6bdd4bba Elegant Tsig handling in the server
Lowlevel, but flexible. i.e. usable when building a server
2012-02-26 22:38:15 +01:00
Miek Gieben f7f1d2ab42 Add listenAndServerTsig function 2012-02-26 21:33:50 +01:00
Miek Gieben 485c7e7a41 Fix some outstanding todos 2012-02-25 21:42:08 +01:00
Miek Gieben 93246f458e Fix error handling and TC bit 2012-02-24 23:43:34 +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 f1542e15d9 use edns0 udpsize in to set the buffer 2012-01-29 00:20:56 +01:00
Miek Gieben ff55b5253a Updates for the latest weekly: weekly.2012-01-27 2012-01-27 08:39:41 +01:00
Miek Gieben e6b94db3b2 Just set all the deadlines 2012-01-24 10:06:39 +01:00
Miek Gieben 48d11d3a17 Use Client.Attemps also when reading 2012-01-23 20:35:14 +01:00
Miek Gieben 7b67cbff49 Set the timeouts throughout the code. New Golang api 2012-01-23 20:25:15 +01:00
Miek Gieben 8f66b74c86 2 sec timeout 2012-01-23 11:43:26 +01:00
Miek Gieben 5917838cbb gofmt 2012-01-20 12:24:20 +01:00
Miek Gieben 8c0ecaa61b Fixes for weekly.2012-01-20 2012-01-20 12:13:47 +01:00
Miek Gieben 3cb9591a51 Gofmt 2012-01-15 15:30:12 +01:00
Miek Gieben 95747ee8d1 Some more todo added 2012-01-12 23:28:08 +01:00
Miek Gieben 9b48d4b899 gofmt 2012-01-12 22:49:26 +01:00
Miek Gieben 3078f05f56 Some more memory tweaks 2012-01-12 22:34:53 +01:00
Miek Gieben 2143ce0031 Fix the tests, but they now fail 2012-01-11 14:44:54 +01:00
Miek Gieben b548a3fe89 Return an error when packing fails 2012-01-08 16:03:30 +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 22a467e718 Fixes the latest weekly 2011-11-02 23:06:54 +01:00
Miek Gieben da2e464de1 A lot of BIND specific checks 2011-09-21 14:22:43 +02:00
Miek Gieben 2f74133d6a More test functions
Minor tweaks for timeouts in client.go
2011-09-20 18:15:36 +02:00
Miek Gieben 956ec9b962 set the timeouts 2011-09-20 17:40:13 +02:00
Miek Gieben 850a12ac8e Return a error when there is no conn, dont panic 2011-09-20 10:20:24 +02:00
Miek Gieben 3be73fcea9 Tsig fixes
make tsig easier to use and even transparant when using the API
2011-09-11 01:10:47 +02:00
Miek Gieben e4acc12f44 Remove debugging code 2011-09-11 00:32:00 +02:00
Miek Gieben 313640276f Make async querying work again 2011-09-11 00:31:03 +02:00
Miek Gieben cd17a26192 Give the channels more sane names
Rename ChannelQuery to QueryChan and
ChannelReply to ReplyChan, both sound much better
2011-09-11 00:20:44 +02:00
Miek Gieben c939840fb2 Fix the examples
Esp. those using xfr functions
2011-09-10 21:37:57 +02:00
Miek Gieben c9332fad8c remove client.Dial/Close
Was a hack to make qperf faster
2011-09-10 21:12:46 +02:00
Miek Gieben befa590883 Double check this 2011-09-10 16:59:25 +02:00
Miek Gieben 6e72207318 Simplify tsig
Add a couple of errors, and make the function signature
of the tis function more inline with the dnssec ones.
2011-09-10 16:50:27 +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
Miek Gieben 41b0b39432 tcp fixes 2011-08-09 15:13:35 +02:00
Miek Gieben 8a82f129c0 tcp fixes 2011-08-09 15:01:29 +02:00
Miek Gieben 44d3cc7daf kill another make() 2011-08-09 13:15:25 +02:00
Miek Gieben 7d2aabea76 re-add qperf 2011-08-08 16:29:13 +02:00
Miek Gieben 861a2adb6c Forget to the add the i := fv.Uint() 2011-08-08 13:10:35 +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 327c9870c4 Fix funkensturm and make it simpler 2011-08-01 13:15:15 +02:00
Miek Gieben faaf0d6b8f better documentation 2011-07-31 14:33:13 +02:00
Miek Gieben da0603089a gofmt -w 2011-07-23 23:43:43 +02:00
Miek Gieben a0b011799e documentation 2011-07-23 23:32:42 +02:00
Miek Gieben 6e7a5dd725 funkensturm compiles, but is slow for some reason 2011-07-06 19:21:19 +02:00
Miek Gieben 7033f6abbe Addr is not needed in the Client struct 2011-07-06 17:39:24 +02:00
Miek Gieben 81c4befb1e docs 2011-07-05 21:58:09 +02:00
Miek Gieben 077c1ce596 Some documentation update 2011-07-05 21:08:22 +02:00
Miek Gieben 3582120233 support tcp4, tcp6/udp6 2011-07-05 20:55:05 +02:00
Miek Gieben 9b6f66c1bb panic when no client handler is found 2011-07-04 22:27:23 +02:00
Miek Gieben a7ac103a20 typos 2011-07-04 21:38:50 +02:00
Miek Gieben dd2b4e5b35 adapt chaos.go to the new api 2011-07-04 21:21:47 +02:00
Miek Gieben 8368f4ce60 Actually remove resolver.go 2011-07-04 20:19:44 +02:00
Miek Gieben d93e0341bb Fix the MX example -- and keep it simple 2011-06-14 21:25:24 +02:00
Elazar 904e322dfd Ran gofix, and manually bring code up to latest go release.
1) Ran gofix on all files.
2) Added "tcp" and "udp" to Resolve* functions in server.go
3) Generated primes to the primes array and not to two predefined
   struct members (P and Q), since now rsa support multi-factor primes.
2011-06-02 13:31:12 +03:00
Miek Gieben 7dbb865c03 TSIG works again 100% 2011-04-22 16:37:26 +02:00
Miek Gieben 21020bc047 more tweaks for tsig, it is broken now 2011-04-19 11:36:30 +02:00
Miek Gieben e45b5679a6 fix tsig for the new api 2011-04-19 11:31:47 +02:00
Miek Gieben 3bb08ec4ba Tsig generation works again *and* is elegant 2011-04-18 22:18:00 +02:00
Miek Gieben 19bfc93c5a remove config.go 2011-04-18 22:08:12 +02:00
Miek Gieben 4d61f9591f further fixes 2011-04-18 18:29:46 +02:00
Miek Gieben 05a6852663 port tcp read 2011-04-18 18:27:59 +02:00
Miek Gieben 13ace2687a some minor updates 2011-04-18 09:28:56 +02:00
Miek Gieben f46069608a fix the async API
The async concurrent api works.
client.Exchange() is there as a sync
2011-04-17 21:56:40 +02:00
Miek Gieben 9f104d58f9 'port' read from socket over 2011-04-17 10:54:34 +02:00
Miek Gieben 031dbba174 "port" the write function 2011-04-15 23:55:27 +02:00
Miek Gieben 8d01350deb Luke, use the slice 2011-04-15 22:32:30 +02:00
Miek Gieben af25a88821 use a SLICE of messages
for the query reply use a slice of message. This way
AXFR/IXFR can be incorparated in this too.

Still todo: tsig
(but I have a very cool idea how to handle that)
2011-04-15 21:42:27 +02:00
Miek Gieben 6152a342da Compiles again - still not sure about the impl. and API 2011-04-14 22:11:41 +02:00
Miek Gieben 950e39d29b Create a DefaultQueryChan 2011-04-13 20:41:16 +02:00
Miek Gieben 39be50cc6a More client stuff 2011-04-12 22:39:38 +02:00
Miek Gieben 7385261dc5 removed 2011-04-12 22:21:09 +02:00
Miek Gieben afab5b1c10 async client library starting to exist 2011-04-12 21:44:56 +02:00