Commit Graph
149 Commits
Author SHA1 Message Date
Michael Bridgen 747d48749d Ignore compiled binary 2014-10-29 11:44:07 +00:00
Michael Bridgen 822ec90606 Rename weavedns package to nameserver, and fix up 2014-10-29 11:41:58 +00:00
Michael Bridgen 8469fea215 Move files around in preparation for melding into weave code
* library code will go in weave/nameserver/
 * main.go for the server goes in weavedns/ with the containerising
2014-10-29 11:34:56 +00:00
Michael Bridgen fdcb960cdd Don't export sendResponse, and pay attention to its retval 2014-10-28 17:23:03 +00:00
Michael Bridgen 03f766bb95 test.Log;test.Fail -> test.Fatal, and use checkError
(in tests)
2014-10-28 17:15:36 +00:00
Michael Bridgen 48328dec50 Change logging config to match weave 2014-10-28 16:52:43 +00:00
Michael Bridgen b3489f6ec1 Move the handler function closer to its use 2014-10-28 15:39:50 +00:00
Michael Bridgen 96ce10a4d5 Use compact if-with-assign statements where scoping allows 2014-10-28 15:38:53 +00:00
Michael Bridgen 126c36cffb Extended makeDNSReply to PTR replies too 2014-10-28 14:46:29 +00:00
Michael Bridgen 5bb6c85565 Move DNS utils into their own file 2014-10-28 11:48:51 +00:00
Michael Bridgen a5869e2090 Use constant for TTL 2014-10-28 11:10:59 +00:00
Michael Bridgen 548039db08 No need to give defaults in docstrings for options
The usage message will include them anyway.
2014-10-28 10:59:30 +00:00
Michael Bridgen 2cc0e8aaa6 Clarify comments 2014-10-28 10:54:37 +00:00
Michael Bridgen cb05e886a8 Removed duplicate check for rDNS domain
There's no need to check whether the queried address is a subdomain of
in-addr.arpa, since this handler is registered with the muxer under
that domain anyway.

(Also, remove a magic number)
2014-10-27 14:13:53 +00:00
Bryan Boreham 510204587b Add simple rDNS lookup 2014-10-24 14:48:13 +01:00
Bryan Boreham d868d27263 Look up by IP 2014-10-24 14:47:49 +01:00
Bryan Boreham 5ee60a0003 Extend tests slightly 2014-10-24 13:37:32 +01:00
Bryan Boreham fa0331cb6d Ensure we only attempt to handle TypeA queries 2014-10-24 13:03:26 +01:00
Bryan Boreham d6f313eac2 Improve debug messages 2014-10-24 12:46:02 +01:00
Bryan Boreham 5f3080b9db Don't crash when printing name of nil interface 2014-10-24 12:37:28 +01:00
Michael Bridgen ad44a8816f Remove subnets from API, since we don't use them 2014-10-23 16:43:41 +01:00
Michael Bridgen 840c0b9f86 Renamed variables for consistency 2014-10-23 16:23:55 +01:00
Bryan Boreham c63b163703 Formatting in error message 2014-10-22 18:27:55 +01:00
Bryan Boreham 94a812d98f Factor out error type checks 2014-10-22 18:24:02 +01:00
Bryan Boreham 0a5990bd6e Factor out testing status checks 2014-10-22 16:59:28 +01:00
Bryan Boreham d84226cc31 Factor out testing error checks 2014-10-22 16:52:35 +01:00
Michael Bridgen 156314a802 Complete multicast requests on first response
This is the simplest thing that works, is consistent with what happens
if there's a local answer, and avoids having all multicast requests
last 250ms or more.

Since we're no longer waiting *at least* the timeout period, I've
bumped the multicast response timeout up to half a second.

There was also a bug whereby the query would be entered into the
inflight map even if the socket write had failed (and the channel had
been closed).
2014-10-22 13:35:40 +01:00
Michael Bridgen e21069f3ab Factored out HTTP error + log 2014-10-22 11:58:55 +01:00
Michael Bridgen 1d5a55ea75 Factored out more (but different) err != nil code 2014-10-21 17:06:46 +01:00
Michael Bridgen 0615d122e9 Made zone return errors and http idempotent
The Zone DB tells you if you have a duplicate or missing record, but
the HTTP server smoothes these over.
2014-10-21 17:05:03 +01:00
Michael Bridgen 5c6410a3c6 Refactored indexOf* 2014-10-21 15:49:42 +01:00
Michael Bridgen 23edd79177 Changed Lock to RLock when matching 2014-10-21 14:01:07 +01:00
Michael Bridgen 6eb7d71499 Substituted checkFatal for repeated if err == nil 2014-10-21 13:58:12 +01:00
Michael Bridgen 1a593fc81f Used an init func instead of initialisers
Ends up slightly neater. (Also note Error goes from os.Stdout to
os.Stderr)
2014-10-21 12:25:05 +01:00
Bryan Boreham 10685a495e Set up defaults so it doesn't crash in tests 2014-10-21 11:57:12 +01:00
Bryan Boreham 699b685969 Adjust test to match change in ListenHttp 2014-10-21 11:55:13 +01:00
Bryan Boreham dd27396ce0 Merge remote-tracking branch 'upstream/master' 2014-10-21 10:15:57 +01:00
Michael Bridgen e8f9705211 Updated README re local domain 2014-10-20 18:39:40 +01:00
Michael Bridgen 35c09f37b9 Added logging.go, required by prior changes 2014-10-20 18:27:24 +01:00
Michael Bridgen 55d21d0ec1 Replaced another log.Printf
(in a file I hadn't noticed)
2014-10-20 18:22:25 +01:00
Michael Bridgen 337919d741 Replaced ad-hoc printf with log levels 2014-10-20 18:18:16 +01:00
Michael Bridgen d3d07deec6 Changed local domain handling
1. The local domain is now ".weave.local", which is safer from TLD
 pollution
 2. If the name given for an IP isn't a subdomain of the local domain,
 ignore it
2014-10-20 18:11:14 +01:00
Bryan Boreham 1b0066cc98 Commented on stop-gap data structure 2014-10-20 17:51:00 +01:00
Bryan Boreham bce06d2e9b Wait for interface in main 2014-10-20 17:26:11 +01:00
Bryan Boreham b8a06521c0 Extract interface util functions to their own file 2014-10-20 17:21:35 +01:00
Bryan Boreham 3af058481e Support returning AAAA records from delegated DNS queries 2014-10-20 17:18:17 +01:00
Bryan Boreham 624db7bdff Replace hard-coded 4 with const for channel size 2014-10-20 16:59:39 +01:00
Bryan Boreham b2dc08fd25 forgot to remove 'dns' 2014-10-20 16:00:56 +01:00
Bryan Boreham 9cfb93ab7b Simplified algorithm in checkInFlightQueries() 2014-10-20 15:43:13 +01:00
Bryan Boreham 217e5e921e Extract checkInFlightQueries method 2014-10-20 15:19:11 +01:00