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
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
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
wtoorop
a435932b04
Features/call reporting timeout ( #1 )
...
* Timed out and canceled netreqs are finished too
* Minor code duplication elemination
* Blah typo
* Embarrassing logic error
2016-06-23 14:02:55 +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
Robert Groenenberg
60c6c8d8ca
Fixed build
2016-06-21 13:19:11 +02:00
Robert Groenenberg
3634fff4dd
Return call_reporting info in case of timeout, so that we can see
...
which server did not respond.
2016-06-20 18:39:15 +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
2555980b41
Forgot to update symbols
2016-06-17 17:07:26 +02:00
Willem Toorop
2873645068
get current (pluggable) eventloop from context
...
So applications can schedule events against it...
2016-06-17 16:50:47 +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
e228f526a3
when nothing else, result[canonical_name] is qname
2016-06-09 16:12:06 +02:00
Willem Toorop
49840c9a85
Some more uniform _getdns_rrset usage
2016-06-09 15:03:51 +02:00
Willem Toorop
e27bfcedb6
Merge branch 'develop' into devel/getdns_rrset
2016-06-09 14:13:11 +02:00
Willem Toorop
27110e0943
DNSSEC wildcard validation issue
2016-06-09 10:44:25 +02:00
Willem Toorop
8679633cd9
One more _getdns_rrset caused dnssec fix
2016-06-08 16:03:45 +02:00
Willem Toorop
6e7f66b216
Sorting of SRVs according to RFC2782
...
Could be optimized... but alas
2016-06-08 12:44:23 +02:00
Willem Toorop
457a4bec92
develop merge fix
2016-06-08 10:57:03 +02:00
Willem Toorop
490aac1b48
Merge branch 'develop' into features/getdns_service
2016-06-08 10:21:29 +02:00
Willem Toorop
2d22b8729d
Locks must be >= 0
2016-06-07 17:21:10 +02:00
Willem Toorop
e16efbbeee
Small bugs from the _getdns_rrset move
2016-06-07 17:08:35 +02:00
Willem Toorop
cf675a9284
Add srv_addresses when query was for SRV
...
Moved _getdns_rrset iterators to rr-iter.[ch] in the process
2016-06-07 16:52:10 +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
40477d3f00
CNAME loops protection
2016-05-30 17:02:28 +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