Commit Graph

178 Commits

Author SHA1 Message Date
Neel Goyal 310a7e330e Adding getters 2014-12-06 23:46:44 -05:00
Willem Toorop 114e459a43 Make things work on FreeBSD again 2014-10-31 14:17:30 +01:00
Willem Toorop 0daa5b573d Allow to set empty bindata's
quite common in OPT record's rdata_raw
2014-10-30 15:08:42 +01:00
Willem Toorop 522a23d864 Get rid of context_fd
recursive mode only
2014-10-28 15:39:48 +01:00
Willem Toorop 829c459823 Horrific typo! Please don't look. 2014-10-28 14:36:41 +01:00
Willem Toorop d92dc8b460 edns_do_bit defaults to 0 with stub
And better handling of including OPT RR in stub query
2014-10-28 14:32:29 +01:00
Willem Toorop f9195fde4d getdns_context_set_follow_redirects not changed
Error in previous commit.
Nothing changed with getdns_context_set_follow_redirects.
It is simply not implemented
2014-10-28 14:27:30 +01:00
Willem Toorop 4740d0baf4 context setters that can be called after create
getdns_context_set_namespaces and getdns_context_set_upstream_recursive_servers
can also be called after context create now.
2014-10-28 14:23:40 +01:00
Willem Toorop 4c8a179e87 issue #76 Setting payload < 512 should not error
Thanks gmadkat
2014-10-27 14:18:31 +01:00
Willem Toorop 2be047d48d declare inline functions in a more portable way
Or at least in a way that works without a -O[1-3] flag...
2014-10-24 23:20:28 +02:00
Willem Toorop cd500f055b memory leak fixes (found with valgrind) 2014-10-23 23:55:52 +02:00
Willem Toorop 73dc0f27da fix: local_hosts set keys and shallow free returns 2014-10-23 23:25:55 +02:00
Willem Toorop 4a3d7fd8b2 Replace ldns_rbtree with getdns_rbtree
As much as possible.
In dnssec ldns_rbtree is inderectly used via the dnssec_zone struct

This change forces use to embed the data in the nodes as getdns_rbtree does not have a data attribute. This is good because lesser allocs and free's and thus slightly faster and less likely to leak memory.
2014-10-23 23:00:30 +02:00
Willem Toorop 55e0d41d4b fix: Don't init suffix with uninitialized domain 2014-10-23 15:32:35 +02:00
Willem Toorop 6f6b8e65a2 Stub edns0 payload 1232 for IPv6 and 1432 for IPv4 2014-10-23 14:30:23 +02:00
Willem Toorop 484f98daf9 remove ldns_res from context 2014-10-23 14:14:55 +02:00
Willem Toorop fc6e583b4b Stub TCP pipelining
TODO: Resolve issue with timeouts in async pipelining mode.
2014-10-18 14:32:55 +02:00
Willem Toorop 181d8cd3f4 stub tcp lookups
And the foundation for tcp keep connections open
2014-10-18 00:25:41 +02:00
Willem Toorop c017e75f5a don't try stubs without upstreams 2014-10-16 14:40:47 +02:00
Willem Toorop 623c9b04a5 Retry stub with different upstream after timeout
Backing off the broken upsteams so they are tried again (increasingly less)
2014-10-16 14:24:13 +02:00
Willem Toorop b62e2bb84c Prepare datastructs for tcp stub resolving 2014-10-16 11:28:32 +02:00
Willem Toorop ee316741ac Async stub resolver using crafted packets 2014-10-15 15:12:16 +02:00
Willem Toorop 8f254913f1 Sync functions use the async _loop functions too
So async and sync functions now have the same code path
2014-10-15 12:16:34 +02:00
Willem Toorop a1be0c985d Miscelaneous fixes that came out of the unit tests
TODO: libuv still has issues.  Do we really need a close callback?
2014-10-15 01:13:39 +02:00
Willem Toorop 768d8fbf4d _loop version for async funcs
So they can be used by the sync functions with a libmini_event loop
2014-10-14 00:14:25 +02:00
Willem Toorop f61d2ae262 write and run methods for eventloop extension 2014-10-10 14:48:52 +02:00
Willem Toorop b3b634a2f5 libevent & libev following new extension scheme 2014-10-09 01:18:53 +02:00
Willem Toorop 1f203485e2 eventloop separate from context & libmini_event 2014-10-08 15:42:33 +02:00
Willem Toorop a21895d145 Fix timeout handling & simultaneous 4 & 6 requests
Simultaneous 4 & 6 requests for async only.
Also get rid of the postponing of callbacks hack.
2014-10-07 15:52:41 +02:00
Willem Toorop 5fc9675397 libunbound requests processing with mini_event 2014-10-06 23:50:39 +02:00
Willem Toorop 54e0b42dcd Timeouts via default mini_event extension 2014-10-06 23:04:12 +02:00
Willem Toorop 58b3e553de Remove redundant param from schedule_timeout funcs 2014-10-06 20:23:50 +02:00
Willem Toorop 648153f98c Timeouts are 64 bits 2014-10-06 16:10:09 +02:00
Willem Toorop 68520e91d4 Return empty reponse on timeouts with async too 2014-10-06 15:11:03 +02:00
Willem Toorop 332f34b3f5 set_upstream_recursive_servers small bugfixes 2014-10-02 00:16:11 +02:00
Willem Toorop 2dcdfaba37 getdns_context_set_upstream_recursive_servers 2014-10-01 23:16:43 +02:00
Willem Toorop 3742edaf07 Get rid of the address_string attribute
Not in the spec, and had internal usage only (but not anymore)
2014-10-01 13:08:36 +02:00
Willem Toorop 1c6ce72f74 Parse /etc/resolv.conf ourselves
At the ame time IPv6 local-link scope_id support
2014-09-30 15:12:48 +02:00
saradickinson d9addba883 Second pass at implementing per query namespaces! 2014-09-25 15:59:05 +00:00
saradickinson 050506341c First pass of implementing per query namespace lookup for stub resolver. Also a getdns local namespace lookup is now used for all sync calls. 2014-09-25 14:49:18 +00:00
Willem Toorop ea4ee27612 Merge branch 'master' into features/gldns 2014-09-24 23:16:46 +02:00
saradickinson 8766f135df More housekeeping 2014-09-17 18:47:04 +00:00
saradickinson 46748c9a0c Housekeeping of ldns res. Fix transport test. 2014-09-17 18:24:07 +00:00
saradickinson 5a765ad632 Fix typo 2014-09-16 11:25:18 +00:00
saradickinson cbfea31081 Add extra check in test_stub_sync for TCP messages 2014-09-13 17:07:07 +00:00
saradickinson f89acb6e2d Setting up nameservers correctly for ldns as stub 2014-09-13 16:19:25 +00:00
Sara Dickinson f59689cf68 Use ldns as stub resolover for sync queries part 1 2014-09-12 14:15:46 +00:00
Willem Toorop c690e3907e Set correct unbound option for edns payload size 2014-09-12 10:09:08 +02:00
Willem Toorop 3b9c1270c2 [API 0.505] "resolver_type" now "resolution_type"
Renamed in the response from getdns_context_get_api_information()
2014-09-03 15:42:11 +02:00
Willem Toorop ffe4d3d295 More missing colons in unbound options 2014-08-19 16:38:59 +02:00
Willem Toorop eac1647fba Need a colon here too 2014-08-19 16:31:13 +02:00
John Dickinson 51d04447ea Fix for issue 54: set_ub_dns_transport() not working 2014-08-10 14:59:03 +00:00
Willem Toorop 26faaa67c1 Fix building docs for blddir != srcdir 2014-05-21 16:21:45 +02:00
Willem Toorop 57b51a5dcc prefer includes local to builddir 2014-05-19 15:50:34 +02:00
Neel Goyal 501bc14de6 Update destroys to return void. Assert failure in context destroy. Update tests 2014-03-11 11:43:41 -04:00
Neel Goyal c819553c58 Add return code to _destroy methods. Prevent destroy in callbacks for the context firing them 2014-03-07 10:42:37 -05:00
Willem Toorop a1351147da context->return_dnssec_status uninitialized
in getdns_context_create.

Also fix memory leak on create_default_namespaces error.
2014-03-07 11:18:23 +01:00
Willem Toorop 2362dc0880 review context destroy from cancel callback 2014-03-06 14:57:22 +01:00
Neel Goyal 3f8e8ac098 Possible fix for #21 and tests 2014-03-05 22:13:37 -05:00
Neel Goyal 6ab9ce861b Fix a silly bug in getdns_context_set_return_dnssec_status 2014-03-05 10:42:36 -05:00
Neel Goyal 108f72bc36 Fix for issue #18 - allow destroy in callback 2014-03-04 17:00:18 -05:00
Neel Goyal b548cce9d8 Add a method to change unbound async mode (getdns_extra) between fork and thread 2014-02-28 19:24:09 -05:00
Willem Toorop d2c890ab6a Fill in <organization> place holder.
s/the name of the <organization>/the names of the copyright holders/g
2014-02-25 14:23:19 +01:00
Willem Toorop 8d77505219 s/Versign/Verisign/g in all files 2014-02-25 14:12:33 +01:00
Glen Wiley 6dd03b1cdc fixed spelling of NLnet in licenses, fixed make clean errs in docs 2014-02-24 09:26:20 -05:00
Neel Goyal deade2b8bb Update extensions to add/remove persistent event based on request count 2014-02-21 18:42:04 -05:00
Neel Goyal 7c30f3710a More code review changes 2014-02-20 17:35:27 -05:00
Neel Goyal abebc0e2b6 Create ldns_rbtree structs with mem functs 2014-02-20 17:05:15 -05:00
Neel Goyal 524783804c Fix some issues per code review 2014-02-20 16:17:41 -05:00
Neel Goyal 48fea8d9e0 Add getdns_context_set_return_dnssec_status 2014-02-20 15:42:10 -05:00
Glen Wiley 344893f87f fixed license and copyright notices 2014-02-20 09:12:19 -05:00
Neel Goyal 59b47a3470 Add getdns_context_get_api_information 2014-02-19 16:22:55 -05:00
Neel Goyal a80d22f07f Add stub for rebuilding unbound ctx. Only allow updates to certain context fields if unbound query hasn't been sent. 2014-02-19 14:56:37 -05:00
Neel Goyal 38904780f2 Add start of api_info. Add package url for autoconf 2014-02-19 13:15:27 -05:00
Willem Toorop 96b9f095a7 Implement getdns_root_trust_anchor 2014-02-19 16:56:00 +01:00
Willem Toorop e9d70dc030 Return INVALID_PARAMETER when upstreams is NULL 2014-02-18 14:38:46 +01:00
Willem Toorop edf1da405f Only set default trust anchor file when it is good 2014-02-12 14:50:00 +01:00
Willem Toorop 340655330b Re-enabled stub resolution
Also re-indented the prepare_for_resolution and ub_setup_stub functions
Sorry for that.
2014-02-12 12:37:05 +01:00
Willem Toorop a3f50a6d86 Test accessibility of trust anchor before adding 2014-02-11 22:53:10 +01:00
Willem Toorop c51e597410 Configure option for trust anchor & dnssec_status 2014-02-11 22:42:21 +01:00
Willem Toorop 563c2a5335 Make time compare portabel + missing includes 2014-02-11 09:57:19 +01:00
Glen Wiley bdff98ffb3 steps toward proper support of namespaces and system files 2014-02-10 19:59:45 -05:00
Willem Toorop 20853601a6 use enum types where possible
following API 0.387 (commit 13571e02f1)
2014-02-09 17:46:12 +01:00
Neel Goyal f6760fc94c Add timeout test. 2014-02-06 22:40:36 -05:00
Neel Goyal 3af362e2fd Fix some major bugs in extensions when clearing timeout. Add libev 2014-02-06 00:24:26 -05:00
Neel Goyal de540dd2e9 Fix issue with timeouts for tight loops 2014-02-05 10:11:53 -05:00
Neel Goyal 4fceebbdcf Fix for issue #51 - do bit is always on 2014-02-04 10:07:47 -05:00
Willem Toorop 374f5b09f4 if !context: GETDNS_RETURN_INVALID_PARAMETER
Bugfix #81
2014-02-04 11:25:21 +01:00
Willem Toorop baedda5ce8 Remove unspecified function 2014-02-04 11:00:57 +01:00
Neel Goyal 86896652a8 Fix tests for non eventloop 2014-02-03 19:57:10 -05:00
Neel Goyal e1c567ecef Add fire_callback for clearing outstanding requests 2014-02-03 17:38:06 -05:00
Neel Goyal 8b64c521a8 Merge develop in. Add local timer 2014-02-03 17:23:31 -05:00
Neel Goyal 6a07664ef9 Fix an issue with timeouts in the async 2014-02-03 16:33:50 -05:00
Glen Wiley 16e58b28a3 cleaned up example, added error code checks 2014-02-03 15:39:09 -05:00
Neel Goyal c658b55d73 Add support for getting next timeout and number of pending events 2014-01-31 15:48:00 -05:00
Neel Goyal e707643a3f Cleanup outstanding requests on eventloop change or context destroy 2014-01-31 15:16:10 -05:00
Neel Goyal 1f847b0d96 Add timeout support 2014-01-31 14:43:02 -05:00
Glen Wiley 118864aeb6 removed references to MIT license, replaced with BSD license 2014-01-28 09:30:01 -05:00
Neel Goyal 67fdf0eb04 timeout stubs 2014-01-27 17:05:25 -05:00
Neel Goyal 13b9e74ff5 Update extensions 2014-01-22 19:55:04 -05:00