Commit Graph

518 Commits

Author SHA1 Message Date
Willem Toorop ea69d31dba move getdns_query to src/tools 2016-07-14 13:54:58 +02:00
wtoorop 79f92cedd2 Merge pull request #197 from saradickinson/feature/upstream_handling
Feature/upstream handling
2016-07-14 10:58:32 +02:00
Willem Toorop 504cb8a783 Merge branch 'develop' into release/v1.1.0a1 2016-07-13 15:55:17 +02:00
Willem Toorop b26d69384f Merge branch 'develop' into release/v1.0.0b2 2016-07-13 15:52:14 +02:00
Willem Toorop be97bd1d71 Mv getdns_context_set_listen_addresses in the lib
Also, check for request_id +
cancel a reply by specifying NULL as response to getdns_reply
2016-07-13 14:50:44 +02:00
Willem Toorop 69b607176c Move getdns_context_config into the library 2016-07-11 20:42:50 +02:00
Willem Toorop 7cbbad67aa Merge branch 'release/v1.0.0b2' into release/v1.1.0a1 2016-07-11 16:06:52 +02:00
Willem Toorop a523838cc6 set_listen_addresses does not change listen_list 2016-07-11 16:05:05 +02:00
Willem Toorop b98d91f745 Daemon edns0 handling bugfix 2016-07-11 15:43:42 +02:00
Willem Toorop 7e614bc534 More conventional server DNSSEC behaviour
+ documentation of behaviour
2016-07-11 15:13:40 +02:00
Sara Dickinson 8fa84c836a Initial re-work of stateful transport selection and timeout/error handling. Also update transport test to avoid timeout. 2016-07-04 17:02:14 +01:00
Willem Toorop e0eb39a295 Move str2getdns type functions in the library 2016-07-04 16:57:27 +02:00
Willem Toorop cc104320e8 Get RR types and classes from constant names 2016-07-04 15:54:05 +02:00
Willem Toorop b99b7511ec Generalize str2ipaddr_dict conversion 2016-07-04 12:58:23 +02:00
wtoorop a55c8ab377 Merge pull request #194 from saradickinson/documentation/doxygen_updates2
Make just the src/getdns files part of doxygen by default.
2016-07-04 12:47:57 +02:00
wtoorop 4e6e6e314a Merge pull request #193 from saradickinson/bugfix/transport_test2
Bugfix/transport test2
2016-07-04 12:43:26 +02:00
Melinda Shore 0e36a3b852 Merge pull request #192 from wtoorop/bugfix/transport_test
Bugfix/transport test
2016-07-01 16:26:26 -08:00
Sara Dickinson ec09d6b8a4 Make just the src/getdns files part of doxygen by default.
Add documentation to cover getdns_extra.h. Re-org of functions to align better with getdns.h Also some work on the README.
2016-07-01 17:53:45 +01:00
Sara Dickinson 03a994af50 Fix recursing_6 test 2016-06-30 15:10:41 +01:00
Willem Toorop 080b338a8f Explain own root server necessity in transport_7
Also query for the consistently large record and not the DNSKEY (which is sometimes large and sometimes not)
2016-06-29 12:32:51 +02:00
Melinda Shore 8318766593 Merge pull request #191 from wtoorop/devel/decompose-getdns_query
Devel/decompose getdns query
2016-06-28 16:36:13 -08:00
Willem Toorop cfaf15f54c When reply comes before request schedule ...
... transaction_id will not be set.
Is this problematic?
2016-06-28 16:53:26 +02:00
Willem Toorop dd03a29b00 Small memory leak fix in set_listen_addresses 2016-06-28 16:34:17 +02:00
Willem Toorop ed9912fae2 On the fly listen_addresses with getdns_query 2016-06-28 15:48:31 +02:00
Willem Toorop ce415a6e2a setup server debugging messages 2016-06-28 15:06:02 +02:00
Willem Toorop 62750b505f Own root server with TCP only full recursion test 2016-06-28 14:39:51 +02:00
Willem Toorop dc7bc4d116 Add and remove listen addresses
Following the algorithm suggested by Shane Kerr:

   # figure out the new addresses to add and the old ones to remove
   to_add, to_remove = compare_addresses(current_set, new_set)

       # add our new addresses
       added = []
          for address in to_add:
                  if set_up_address(address) == SUCCESS:
                          added.add(address)
            else:
                    # if we have an error, remove any of those addresses
                    # that we have added so far and return error
                    for address in added:
                                tear_down_address(address)
                return BIG_FAT_FAILURE

               # git rid of our old addresses
               for address in to_remove:
                      tear_down_address(address)
           cancel_current_io(address)

       return SUCCESS
2016-06-28 11:03:25 +02:00
Sara Dickinson b277aef435 Remove build warnings 2016-06-27 11:53:39 +01:00
Sara Dickinson 3ee5cf32b6 Split the recursive transport test 6 into 3 and add a shorter timeout to the fail case to stop the overall test timing out. 2016-06-25 15:57:14 +01:00
Willem Toorop a57b19332a track connections per listener
so they can be dealt with when a listener has to go.
Connections are kept in a double linked list.
Prev links are pointers to the next pointer, to deal with the list handle (i.e. the first next pointer) in a uniform way.
2016-06-23 17:05:32 +02:00
Willem Toorop 9c7f6faf76 Don't TCP idle timeout with queries to be answered 2016-06-23 16:26:20 +02:00
Willem Toorop 50416ecc7f Make getdns_query daemon work again 2016-06-23 15:26:19 +02:00
Willem Toorop 32c6e1fdee Merge branch 'develop' into devel/decompose-getdns_query 2016-06-23 15:06:20 +02:00
Willem Toorop f5d31cd93c Some minor getdns_query memory leak fixes 2016-06-21 16:31:07 +02:00
Willem Toorop 3cc369a27d Move serving requests out of getdns_query 2016-06-21 16:14:54 +02:00
Willem Toorop 09b4ef9e9c Let getdns_query use the default eventloop
instead of a custom eventloop
2016-06-17 17:07:41 +02:00
Willem Toorop 22095f23f6 Bugfix: cannot override targets in Makefile 2016-06-17 16:37:41 +02:00
Willem Toorop 0f16860dbd Move configuring contexts with a dict out 2016-06-17 16:01:36 +02:00
Sara Dickinson 497d87a028 Correct the name to resolution_type 2016-06-17 11:25:21 +01:00
Sara Dickinson 3c7758fdbc Minor testing updates:
- add option to use IPv6 for manual transport tests
- add recursion mode to call_reporting
2016-06-16 10:47:43 +01:00
Willem Toorop 4fde05380f Yet another pass at fixing dependencies
pretty sure it will work this time though...
2016-06-16 11:12:11 +02:00
Willem Toorop d70bd5e637 A dependency fix that actually works! 2016-06-16 11:01:46 +02:00
Sara Dickinson c0187a19ea Quick fix for TLS timeouts not re-using a connection. Better solution is needed.
Also minor fixes in getdns_query:
 - spurious semicolon (caused build warning)
 - build warning for initialised variable
 - have getdns_query honour the CLASS in the incoming query
2016-06-15 17:15:13 +01:00
Willem Toorop 1608244556 Dependency fix 2016-06-15 16:56:20 +02:00
Willem Toorop 8eea955f56 Dependencies
Including the decomposed getdns_str2dict
2016-06-15 16:47:40 +02:00
Willem Toorop ff77af148e Move str2dict conversion out of getdns_query 2016-06-15 15:53:43 +02:00
Willem Toorop c74bfb5339 Pass NULL to select when timeout is infinite 2016-06-15 11:04:11 +02:00
Willem Toorop ea226b882d To run tpkg tests directly from clean git repo 2016-06-14 12:52:54 +02:00
Willem Toorop 2ed28badfd Replies without answer don't have a canonical name 2016-06-09 16:47:00 +02:00
Willem Toorop 3af8a917a2 TSIG spec contains colon too 2016-06-01 17:00:05 +02:00
Willem Toorop a100aff4de Free allocated qname after query 2016-05-31 16:55:59 +02:00
Willem Toorop cc39d51a4c Query with the correct extensions! 2016-05-31 15:40:22 +02:00
Willem Toorop ff4545dae0 Listening sockets should use SO_REUSEADDR 2016-05-31 15:14:50 +02:00
Willem Toorop 6781899247 Allow keys without quotes in json dicts 2016-05-31 15:02:17 +02:00
Willem Toorop 2bb254c898 A DNSSEC resolver validates without DO too 2016-05-31 13:17:16 +02:00
Willem Toorop 2b81be8859 Better servfail serving in getdns_query daemon 2016-05-30 16:37:38 +02:00
Willem Toorop 2c43afe338 SERVFAIL should contain the query name... 2016-05-30 11:25:07 +02:00
Willem Toorop 1fb91028ad Oopsy 2016-05-26 17:05:06 +02:00
Willem Toorop 89d2f74d24 First fixes that came out of deckard testing 2016-05-26 17:02:21 +02:00
Willem Toorop e25e697970 Merge remote-tracking branch 'upstream/develop' into features/create_dict_with_json 2016-05-25 15:12:48 +02:00
Willem Toorop 4334da370e Recursing available on bogus answer too
provided the resolution mode is RECURSING
2016-05-25 14:53:33 +02:00
Willem Toorop 9e0127e74c Don't allow primitive keys (yet)
They cannot handle the colon very well (yet)
2016-05-23 15:54:53 +02:00
Willem Toorop 95718c9474 Mention format of the settings 2016-05-23 15:03:51 +02:00
Willem Toorop 77af32d121 Two more missing unofficial settings options 2016-05-23 14:43:05 +02:00
Willem Toorop eef421fb63 Allow configuration passed on command line too 2016-05-23 14:33:56 +02:00
Willem Toorop 7b861ecbbc Allow arbitrary bindata with json dict primitives 2016-05-23 12:41:46 +02:00
Willem Toorop acad529654 Default extensions settings via config file 2016-05-23 12:22:23 +02:00
Willem Toorop 584193eb39 Stub daemon mode forwards the request header 2016-05-23 11:35:50 +02:00
Willem Toorop 4479d06ebd Allow keys without quotes in config file
+ help text that show config file option
2016-05-23 11:27:27 +02:00
Willem Toorop 7b47e82eae DNSSEC in server working with recursive mode too 2016-05-22 20:49:52 +02:00
Willem Toorop 382a5ec452 getdns_query daemon pass through header options
(Enables DNSSEC for stub mode, but not for recursive)
2016-05-22 18:23:15 +02:00
Willem Toorop 959f1e5496 listen_addresses setting in config file 2016-05-22 17:35:14 +02:00
Willem Toorop 14a950bc29 getdns_query -C for settings via config file 2016-05-22 15:35:32 +02:00
Sara Dickinson 9c8e07a06a Merge branch 'develop' of https://github.com/getdnsapi/getdns into feature/unit_test_updates_2 2016-05-20 16:07:52 +01:00
Sara Dickinson 84d6da8ef6 Fix ups after Willems review 2016-05-20 16:01:23 +01:00
Willem Toorop e8db20a722 Merge branch 'develop' into features/create_dict_with_json 2016-05-20 15:04:08 +02:00
Willem Toorop 7f30aba6bd Only merge non empty lcov info files 2016-05-19 21:15:24 +02:00
Willem Toorop 028ceb7ebf Merge branch 'develop' into devel/bsd-fixes 2016-05-19 21:13:47 +02:00
Willem Toorop f806ffdc70 Anticipate BSD make in tpkg's 2016-05-19 15:56:19 +02:00
Willem Toorop 4c3888b18e jsmn.h is relative to $(srcdir) too 2016-05-18 15:56:54 +02:00
Willem Toorop 7fd9d1e342 const-info.h is relative to $(srcdir) 2016-05-18 15:47:57 +02:00
Willem Toorop 11a063bad0 Parse IPv4, IPv6 and dnames as primitives 2016-05-18 15:21:24 +02:00
Sara Dickinson 98d636b99d Updates to unit tests and tpkg 2016-05-16 17:56:48 +01:00
Willem Toorop 1d5446f117 First pass at parsing getdns dicts in text format 2016-05-11 12:07:27 +02:00
Willem Toorop 4159360ee5 Pass run-all.sh params to tpkg's configure calls 2016-05-09 14:13:37 +02:00
Willem Toorop 4b7e79cc35 TCP server now also working 2016-05-06 17:30:05 +02:00
Willem Toorop 78a6a47b05 Anticipate new pretty print format in tpkg tests 2016-05-04 15:25:18 +02:00
Willem Toorop a80afd357e Initial UDP only server for getdns_query
Provide listening addresses in the same way as upstreams,
but with the initial character '~' instead of '@'.
2016-05-04 09:38:26 +02:00
Willem Toorop 9f3ad7d603 Add our version of jsmn as submodule 2016-05-03 13:38:40 +02:00
Willem Toorop 240bb76bd5 Merge branch 'develop' into devel/clang-static-checking 2016-04-29 16:33:06 +02:00
Willem Toorop 066c0b3837 Merge branch 'features/canonical_dnssec_chain' into upstream/develop 2016-04-29 16:24:58 +02:00
Willem Toorop a8dbb3dd51 Static checking fixes 2016-04-29 12:00:17 +02:00
Willem Toorop 84570a5f0a Static checking with the clang analyzer 2016-04-29 11:47:20 +02:00
Willem Toorop d09698496d Fail on scheduling errors 2016-04-28 15:02:27 +02:00
Willem Toorop 234d6d1b06 Dependencies 2016-04-28 14:39:26 +02:00
Willem Toorop 6e0d8de885 tpkg for the header extension 2016-04-28 14:28:22 +02:00
Willem Toorop b12aeb80fb Allow for tpkg test with configured srcdir
By temporarily moving the configured files aside while building
2016-04-28 14:26:29 +02:00
Willem Toorop 04b3830fb6 Set OPCODE in header too 2016-04-28 13:44:28 +02:00
Willem Toorop d841582d67 Setting header bits through extensions working 2016-04-26 15:54:58 +02:00
Willem Toorop af8e27f059 Merge branch 'devel/scheduling_bug_detection' into features/canonical_dnssec_chain 2016-04-22 14:42:25 +02:00