Commit Graph

71 Commits

Author SHA1 Message Date
Willem Toorop 3631cd658a get_val_chain for all possible scenarios 2015-06-23 00:00:20 +02:00
Sara Dickinson 9d967317d3 Improve the timeout handling for TLS. 2015-05-03 15:11:46 +01:00
Sara Dickinson 01adce8299 Organise code in stub.c and add some utility methods. 2015-05-02 18:08:45 +01:00
Sara Dickinson 450a3bc6ff Fix STARTTLS fallback. 2015-04-30 14:52:16 +01:00
Sara Dickinson 79b3412fbf Add another transport option as proof of concept for STARTTLS. 2015-04-29 19:20:25 +01:00
Sara Dickinson 3de15ad782 Change internal transport handling to use a list, not a fixed type 2015-04-24 16:29:08 +01:00
Sara Dickinson f2ae55858f First pass at making handshake async. Lots of issues with this code still
- timeouts are not being rescheduled on fallback
- several error cases are not being handled correctly (e.g. 8.8.8.8) and a user callback is not always called
- the fallback mechanism is not generic (specific to tls to tcp)
2015-04-23 17:46:31 +01:00
Willem Toorop 2a6fc74314 netinet/in.h and openssl/ssl.h from config.h 2015-04-18 22:30:56 +02:00
Sara Dickinson 99c1973fae Cleanup of TLS code 2015-04-16 18:05:51 +01:00
saradickinson 99aa79b48f First pass at TLS implementation - needs work! 2015-04-16 18:05:27 +01:00
Willem Toorop 00f047816d EDNS cookies processing as stub 2015-03-22 10:50:48 -05:00
Willem Toorop 3aea9da626 edns_cookies extension 2015-03-20 21:37:54 +01:00
Willem Toorop d2345285a6 dnssec_return_validation_chain with stub resolving 2015-03-18 23:45:26 +01:00
Willem Toorop c02f895358 Miscelaneous cleanups
as a consequence of ldns elemination with local-hosts
2015-03-12 22:41:39 +01:00
Willem Toorop a77f156d08 Remote the ldns_pkt result from the netreq
Proving that we don't need ldns_pkt any more
2015-02-18 12:36:42 +01:00
Willem Toorop f01ed133f5 ldns_wire2pkt at create_getdns_response time only
This break priv_get_validation_chain
2015-02-11 14:55:22 +01:00
Willem Toorop f1b916aac8 Store wireformat queries in netreq's too 2015-02-03 10:46:44 +01:00
Willem Toorop 3f046cf573 Embed netreqs in dns_reqs and wire_data in netreqs
TODO: make sure the wire_data buffer is filled with the response
2015-01-29 12:30:40 +01:00
Willem Toorop 4cc4629bdf Don't expose scheduling side of extensions
Also moved debugging macro's from types-internal.h ro util-internal.h
2014-11-07 11:38:02 +01: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 d03a22ba62 fix: stub udp max_udp_size > 4096 support 2014-10-23 15:17:54 +02:00
Willem Toorop e9548fc5fb Fix for TCP stub mode
Stupid mistake.
One can not clear an freshly "cleared" initialized event!
2014-10-19 22:51:42 +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 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 bd01b0b83e write callback for stub requests
which is nice for scheduling retries etc.
2014-10-15 23:57:24 +02:00
Willem Toorop 02ea4ae82b typedefs at one place only 2014-10-15 21:00:57 +02:00
Willem Toorop ee316741ac Async stub resolver using crafted packets 2014-10-15 15:12:16 +02:00
Willem Toorop 5db849f9ec Generalize debugging scheme 2014-10-15 10:47:18 +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 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 54e0b42dcd Timeouts via default mini_event extension 2014-10-06 23:04:12 +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 57b51a5dcc prefer includes local to builddir 2014-05-19 15:50:34 +02: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 80703de636 Begin refactor out extensions into libs. 2014-02-21 12:23:20 -05:00
Neel Goyal 7c30f3710a More code review changes 2014-02-20 17:35:27 -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
Willem Toorop c51e597410 Configure option for trust anchor & dnssec_status 2014-02-11 22:42:21 +01:00
Neel Goyal d8f8eeca52 Fix signature on clear timeout for extensions 2014-02-06 00:10:35 -05:00
Neel Goyal 8b64c521a8 Merge develop in. Add local timer 2014-02-03 17:23:31 -05:00
Neel Goyal 1f847b0d96 Add timeout support 2014-01-31 14:43:02 -05:00
Neel Goyal 67fdf0eb04 timeout stubs 2014-01-27 17:05:25 -05:00