Commit Graph

1066 Commits

Author SHA1 Message Date
wtoorop d819bc901b Merge pull request #104 from saradickinson/features/transport_api
Commit addition of transport list to the API.
2015-06-18 22:02:46 +02:00
Sara Dickinson 0acdcc34b0 Changelog, idle_timeout test, formatting 2015-06-18 17:29:23 +01:00
Sara Dickinson 68dfb15706 Add context idle timeout 2015-06-18 17:11:11 +01:00
Sara Dickinson 8dd8d90e74 Commit addition of transport list to the API.
- set and get functions are added.
- Existing transport functions retained for backwards compatibility.
- Basic combinations work as before, but underlying functional changes and cleanup are not complete yet...
- Context level options for timeouts and max_transactions_per_tcp_connection coming soon...
2015-06-17 17:18:09 +01:00
Willem Toorop 129e340e8e Collect validation chains for RRs without sigs 2015-06-17 14:46:44 +02:00
Willem Toorop 39639a86c4 Make dname_equal reusable
+ some symbol renames
2015-06-16 16:11:51 +02:00
Willem Toorop 4445a5f9cc Include rdata size with compressed names 2015-06-12 15:45:50 +02:00
Willem Toorop 731cc37434 Another redundant ldns reference 2015-06-12 15:45:37 +02:00
Willem Toorop 97f0dddb1e remove ldns dependency from rr-dict.c
Only dnssec.c left
2015-06-12 13:51:36 +02:00
Willem Toorop ae1db39a33 Native stub validation 2015-06-11 15:40:44 +02:00
Willem Toorop c28f6ee595 rm of superfluous ldns_rr to getdns_dict funcs 2015-06-11 12:17:47 +02:00
Willem Toorop fd385454b4 rm a few more leftover ldns references 2015-06-11 12:04:59 +02:00
Willem Toorop e820452aaa Rm 2 outdated ldns usage cases 2015-06-11 11:21:12 +02:00
Willem Toorop d5f70ab904 rm spurious execute bits +unit test to detect them
Thanks Paul Wouters
2015-05-26 14:16:27 +02:00
Willem Toorop 42bdaaa69d We already redefined minievent symbols 2015-05-21 15:02:51 +02:00
Willem Toorop f78ad93853 Update Makefile's, constants and symbols 2015-05-13 23:30:14 +02:00
Sara Dickinson 894cb1555b Fix intermittent crash for STARTTLS 2015-05-13 17:15:56 +01:00
Willem Toorop 98b3364b65 uniform debugging method + disable stub debugging 2015-05-13 12:47:17 +02:00
Willem Toorop 011b504496 Fix misplaced freeaddrinfo 2015-05-13 12:39:24 +02:00
Willem Toorop b89b625321 autoreconf -fi on FreeBSD to get libtool 2.4.6 2015-05-12 20:47:23 +02:00
wtoorop 802c693ee5 Merge pull request #97 from saradickinson/features/async_tls
Features/async tls
Thank you Sara!
2015-05-12 17:05:10 +02:00
saradickinson 3ac5e660f9 Address few minor bugs pointed out by willem 2015-05-11 22:01:31 +02:00
Willem Toorop 01d4275336 Run once with libevent! 2015-05-08 13:12:06 +02:00
Sara Dickinson 9a7bfdd45b Add trivial stub_debug functions. 2015-05-03 15:39:21 +01: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 d6d83b219d Make sure UDP only uses 1 upstream per IP address. Fix a couple of other bugs. 2015-04-30 19:07:49 +01:00
Sara Dickinson 450a3bc6ff Fix STARTTLS fallback. 2015-04-30 14:52:16 +01:00
Sara Dickinson 7905eda8b7 Some clean up of connection handling. Still a problem with STARTTLS fallback that needs fixing. 2015-04-30 12:24:13 +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 b533bc59c5 Fix bug when fallback not available 2015-04-27 16:37:16 +01:00
Sara Dickinson 4e6e66fc77 Get sync messages working with new async code. 2015-04-27 15:32:57 +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
Willem Toorop 0ba6af3523 upstreams_cleanup from upstreams_dereference 2015-04-18 22:17:28 +02:00
Willem Toorop 84c5b67ee0 Re-enable printing of json with getdns_query 2015-04-18 09:53:50 +02:00
Willem Toorop b26f09d1aa autoreconf -if # For convenience... 2015-04-18 09:35:46 +02:00
Sara Dickinson 6c7ffc4e4e 1) Fix enum mapping error.
2) Also add detection of TLS 1.2 in openssl during configure and warn that it if not available then TLS will not be available. Using TLS_ONLY in stub mode will then error with BAD_CONTEXT. TLS/TCP will fallback to TCP.

3) Explicitly disallow use of TLS_ONLY in RECURSIVE mode since it isn't supported yet. TLS/TCP will fallback to TCP.

4) Fix for MAC OS X build where openssl not linked correctly
2015-04-17 18:38:13 +01:00
Sara Dickinson ab4fb8d9e9 Enable GETDNS_TRANSPORT_TLS_ONLY_KEEP_CONNECTIONS_OPEN for libunbound. Should only be used in stub mode.
GETDNS_TRANSPORT_TLS_FIRST_AND_FALL_BACK_TO_TCP_KEEP_CONNECTIONS_OPEN still just does TCP.
Also some tidy up of new transport types.
2015-04-17 15:50:08 +01: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 b163ad1870 Doxygen documentation for the new functions 2015-04-08 15:36:12 +02:00
Willem Toorop 830e0267b3 Fix ASSERT_RC macro with check_getdns 2015-04-03 00:15:32 +02:00
Willem Toorop c63bbd1399 s/getdns_strerror/getdns_get_errorstr_by_id/g
In the unit tests make use of the newly exposed error string getter
2015-04-02 23:08:35 +02:00
Willem Toorop 87eb9307a7 A getter for context update callbacks 2015-04-02 22:01:30 +02:00
Willem Toorop 498dedbb8d typo :( 2015-04-02 15:56:13 +02:00
Willem Toorop a0aabc3543 getdns_get_errorstr_by_id replaces getdns_strerror
In the future maybe.  Discuss on list.
2015-04-02 15:33:10 +02:00
Willem Toorop 56bb9dbbdc Pass along a userarg with context update callbacks 2015-04-02 14:42:26 +02:00
Willem Toorop 18381e7753 Get rid of +sit option in getdns_query 2015-04-02 13:59:10 +02:00
Willem Toorop eb7920a4a6 Issue #84 getdns_address modifies extensions param 2015-04-02 13:58:27 +02:00
Willem Toorop c9a61bd91e Query for AAAA first with getdns_address
They were already sent out simultaneously and then listened for, but A went out on the wire first.  Now AAAA.
2015-04-02 13:32:00 +02:00
Willem Toorop c0bc799c3e Fix some C99 compat issues with FreeBSD 2015-03-26 17:03:55 -05:00
Willem Toorop b5d6180506 enlarge timeouts for hostname_12 unit tests 2015-03-26 13:40:39 -05:00
Willem Toorop 3c816b0c86 Emberassing mistake (dont look) 2015-03-23 15:38:50 -05:00
Willem Toorop 526c3a3491 Fix stub validation key rollover issue 2015-03-22 15:41:55 -05:00
Willem Toorop 8b5b8519aa Merge branch 'print_json' into release-0.1.7 2015-03-22 11:01:58 -05:00
Willem Toorop 19547536ac arc4random in secret generation 2015-03-22 11:01:37 -05:00
Willem Toorop d06d94a0c7 Merge branch 'arc4random' into release-0.1.7
Conflicts:
	src/config.h.in
2015-03-22 10:55:03 -05:00
Willem Toorop 00f047816d EDNS cookies processing as stub 2015-03-22 10:50:48 -05:00
Willem Toorop 4683208fd1 First go at using arc4random 4 random numbers 2015-03-21 04:41:25 -05:00
Willem Toorop 3aea9da626 edns_cookies extension 2015-03-20 21:37:54 +01:00
Willem Toorop 5da3bf1af2 Check for libcrypto (required with cookies) 2015-03-20 21:17:14 +01:00
Willem Toorop e6462aa0e4 JSON output 2015-03-20 19:55:17 +01:00
Willem Toorop 3ca69266d1 getdns_query target 2015-03-20 18:25:21 +01:00
Willem Toorop a5e8f22246 snprintf style fixed buffers 2015-03-20 18:19:06 +01:00
Willem Toorop a53f50b530 Minor stub validation fixes and improvements 2015-03-19 10:55:34 +01:00
Willem Toorop d2345285a6 dnssec_return_validation_chain with stub resolving 2015-03-18 23:45:26 +01:00
Willem Toorop 7fc18e8c35 Anticipate older libldns with travis 2015-03-18 21:43:41 +01:00
Willem Toorop fa782d1043 --enable-broken-native-stub-dnssec
Still needs a little more work for wildcards and NODATA answers...
2015-03-18 14:45:06 +01:00
Willem Toorop 59c92b884c Syntax more closed to dnsextlang 2015-03-18 09:38:30 +01:00
Willem Toorop 9942550748 dnssec_return_validation_chain without ldns 2015-03-16 17:05:03 +01:00
Willem Toorop 70cb26bb00 Read trust anchor file without ldns 2015-03-15 21:25:38 +01:00
Willem Toorop 2ad1470b4e char *getdns_pretty_print_list(getdns_list *list)
Handy for debugging purposes
2015-03-15 21:23:44 +01:00
Willem Toorop ebb519919a Get rid of ldns usage, and a malloc/free 2015-03-12 23:09:04 +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 4b7ae8d0bc Merge branch 'master' into local-hosts 2015-03-12 21:41:11 +01:00
Willem Toorop 90ae4bf62c local-hosts handling without ldns 2015-03-12 21:37:03 +01:00
ngoyal fb80ad9b4e Update symbols to reflect new getters 2015-03-12 12:18:02 -04:00
Willem Toorop 5dd2236675 getdns_query edns cookies testing 2015-03-09 23:32:21 +01:00
Willem Toorop d48c509bfc Fix single repeat dict case 2015-03-09 23:31:49 +01:00
Willem Toorop d72151ed51 rdata_raw for unknown rr types 2015-03-06 16:12:51 +01:00
Willem Toorop fe10123323 header bits are 1 or 0 2015-03-05 15:26:06 +01:00
Willem Toorop 5575b9e31f Miscellaneous memory issues found with valgrind 2015-03-05 15:03:40 +01:00
Willem Toorop 30806ce760 Remove ldns dependency from convert.c 2015-03-02 12:21:29 +01:00
Willem Toorop 13b7133b9d Fix NOERROR/NODATA test
Because hampster.com started to be an e-mailable domain
2015-03-02 11:44:27 +01:00
Willem Toorop 2b8f65f389 rm ldns dependency from dict.[ch] 2015-03-02 11:38:46 +01:00
Willem Toorop fe8f46b0af The CSYNC RR type 2015-02-19 14:07:42 +01:00
Willem Toorop af47cf81a3 Fix reversed IPv6 to domain under our control 2015-02-19 10:31:18 +01:00
Willem Toorop 9a0f4700ea rm rdf template helper comments 2015-02-19 00:21:37 +01:00
Willem Toorop 12d3ca6797 HIP wireformat parsing 2015-02-19 00:20:13 +01:00
Willem Toorop 0a9477d9d7 getdns_query RR type parsing bugfix
We need a terminating '\0' as last character always
2015-02-19 00:19:01 +01:00
Willem Toorop e845ffa3bf IPSECKEY wireformat parsing 2015-02-18 23:36:32 +01:00
Willem Toorop 9b90ced595 Make special handlers for rdf work
+ bugfix in repetition of rdf blocks
2015-02-18 20:39:56 +01:00
Willem Toorop bea4b50422 handlers for APL "n" and "adfpart" rdf's 2015-02-18 15:44:09 +01:00
Willem Toorop f78fdd0594 Fix canonical_name at root of response dict
It will be the first canonical name in the replies.
2015-02-18 14:46:55 +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 a722778b3c Already lose some replaced functions 2015-02-17 23:11:37 +01:00
Willem Toorop 05cc557de0 Special handling for OPT 2015-02-17 22:59:47 +01:00
Willem Toorop b1bf4a6741 canonical_name in reply dict + lose debug printing 2015-02-17 22:36:57 +01:00
Willem Toorop ceeab9965a Print null terminated bindata strings as strings 2015-02-17 21:44:16 +01:00
Willem Toorop 7fecb7d922 Get rid of debugging info 2015-02-17 21:44:01 +01:00
Willem Toorop 73776bcd48 dname's as decompressed bindata's 2015-02-17 21:28:39 +01:00
Willem Toorop 3c5b28ffaf Fix printing of text type rdata fields 2015-02-17 17:06:36 +01:00
Willem Toorop 1fea8d3d1f Don't forget to handle canonical name & dname's! 2015-02-17 11:58:51 +01:00
Willem Toorop ced873a80d Start with rdf iterators to rdata dict conversion
Todo:  OPT
2015-02-17 11:53:01 +01:00
Willem Toorop fd9ead4fec Function to get the section of a rr_iter 2015-02-17 11:52:03 +01:00
Willem Toorop d3f480009b Convenience list append functions 2015-02-16 16:01:15 +01:00
Willem Toorop 177ee2046a Wireformat rdata field iterator 2015-02-14 21:42:25 +01:00
Willem Toorop 2dcc0a0da6 Prefix private types with priv_ too 2015-02-14 12:30:51 +01:00
Willem Toorop e0ab471de8 draft-levine-dnsextlang'ish type rr and rdata defs 2015-02-14 11:44:13 +01:00
Willem Toorop 04e2d4c2c1 bugfix: on tcp read, realloc with *new* buffer sz 2015-02-12 12:05:10 +01:00
Willem Toorop cd098f9429 bugfix: Dynamic max payload only when OPT present 2015-02-12 12:03:20 +01:00
Willem Toorop c649c675e2 bugfix: Include OPT when max payload is dynamic 2015-02-12 11:59:44 +01:00
Willem Toorop 37def257ee Start with wireformat RR iterator 2015-02-11 23:51:20 +01:00
Willem Toorop 6a16a56717 create response header from wireformat 2015-02-11 16:59:47 +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 aedc4366ff Wireformat debugging 2015-02-03 11:38:11 +01:00
Willem Toorop 9ed074e58d set max_udp_payload_size 2 response size 2015-02-03 11:36:08 +01:00
Willem Toorop b5a6fa8064 rm some obsolete includes in stub.c 2015-02-03 11:24:35 +01:00
Willem Toorop de2e0b1157 transfer wiredata with unbound requests too 2015-02-03 11:23:30 +01:00
Willem Toorop 545a83e1a6 netreq->response contains wire_data packet 2015-02-03 11:12:05 +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 f9a0974e5a just_address_answers only with getdns_address()
We gave it always, but reading the spec it seems it is only required when a
call to getdns_address() or getdns_address_sync() was made.
2015-01-29 12:29:05 +01:00
Willem Toorop 736f5ff157 No executable flags on source files
Thanks Paul Wouters
2015-01-20 12:16:49 +01:00
Willem Toorop 6fc63d242b Link build requirements in tests too
Thanks Ondřej Surý
2015-01-20 12:14:23 +01:00
wtoorop b34a65f8fa Merge pull request #82 from getdnsapi/feature/context_getters
Adding context getters
2015-01-20 11:28:29 +01:00
Willem Toorop 90e988c8a3 Make the transport server work on Mac OS-X too! 2015-01-16 15:15:12 +01:00
Willem Toorop fabf0703a8 Fix unused variable warning 2015-01-14 14:17:08 +01:00
Willem Toorop 065b65d3b7 Bump version to 0.1.6 (library version 1.1.1) 2015-01-14 14:16:41 +01:00
Neel Goyal 310a7e330e Adding getters 2014-12-06 23:46:44 -05:00
Willem Toorop a44ad67939 Set options in interactive mode too 2014-11-11 15:20:51 +01:00
Willem Toorop 9356da25ac Reversed lookups with getdns_query 2014-11-10 16:30:45 +01:00
Willem Toorop cf64c38dc1 Doxygen errors 2014-11-10 15:57:17 +01:00
saradickinson 593670f524 Removing debug statement (blush) 2014-11-07 20:17:03 -10:00
Willem Toorop b780db0538 Portability with older systems
(tested on SunOS 5.11)
2014-11-07 16:57:24 +01:00
Willem Toorop 335c701ce5 Fix dependencies in Makefiles, get rid of VPATH
They couse trouble finding the dependencies in the correct places.
Also, use -D_POSIX_C_SOURCE=200112L -D_XOPEN_SOURCE=600 only when needed
2014-11-07 15:18:32 +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 30627045ae Use pkg-config to configure libcheck
where available
2014-11-07 09:07:58 +01:00
Willem Toorop 3c9b0c2e30 Don't prefix extension libraries names from /src 2014-11-07 07:26:09 +01:00
Willem Toorop d7300c17f8 Prevent duplicate symbol _context on Darwin 2014-11-06 21:09:28 +01:00
Willem Toorop a4bb10396f Check for libcheck requirements 2014-11-06 20:47:52 +01:00
Willem Toorop 87a8889c7e Let libtool evaluate symbols in correct order
This makes libev work on FreeBSD, so resolves issue #43
2014-11-04 14:56:02 +01:00
Willem Toorop a16abce887 Don't export symbols that can be inline
Thanks Geoff Huston
2014-11-03 15:17:14 +01:00
Willem Toorop 850d8453c9 Make it work on linux again :/ 2014-10-31 14:25:51 +01:00
Willem Toorop c7e7c3804a Merge branch 'master' of github.com:getdnsapi/getdns 2014-10-31 14:20:39 +01:00
Willem Toorop 114e459a43 Make things work on FreeBSD again 2014-10-31 14:17:30 +01:00
Willem Toorop b642d814e4 Bump library version because of binary API change 2014-10-31 11:30:24 +01:00
Willem Toorop a0e1311afb Fix install getdns_query target 2014-10-31 11:28:42 +01:00
Willem Toorop 0bb94ff63c Install target in src/test for getdns_query 2014-10-30 16:47:11 +01:00
Willem Toorop 3bc67a83c3 strlcpy compat function prototype in config.h
(when needed)
2014-10-30 15:50:35 +01:00
Willem Toorop 6d2ff90203 Remove getdns_context_fd from exported symbols 2014-10-30 15:50:14 +01:00
Willem Toorop 905b4bcc8c Fix compiling with libevent1 2014-10-30 15:42:08 +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
saradickinson 0680e1144f Add detection of TFO support during configure 2014-10-28 17:51:49 +00:00
saradickinson 9d7d9997df TCP fast open support (linux only). Enabled with --enable-tcp-fastopen configure option. 2014-10-28 17:51:49 +00:00
Willem Toorop 129d614f5c pretty print getdns_context_get_api_information 2014-10-28 16:36:41 +01:00
Willem Toorop 2540ef820e tests_dnssec can also be done with getdns_query 2014-10-28 16:19:49 +01:00
Willem Toorop 522a23d864 Get rid of context_fd
recursive mode only
2014-10-28 15:39:48 +01:00
Willem Toorop a1b06ec0d7 Add my own crude test program 2014-10-28 14:50:20 +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 154a84665b Fix priv_getdns_append_opt_rr 2014-10-27 21:35:44 +01:00
Willem Toorop 35c58cc598 set payload size < 512 to 512 with extensions too 2014-10-27 19:26:15 +01:00
Willem Toorop 4ac063f5b8 libevent1 fix 2014-10-27 15:45:27 +01:00
Willem Toorop 18c316e396 Suppress compile warning 2014-10-27 15:15:59 +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 f633886cbf recv, write and sendto return ssize_t 2014-10-24 23:12:28 +02:00
wtoorop 8a8ce3431e Merge pull request #77 from saradickinson/tcp_resend_bug
Thanks Sara, well spotted!
Fix 2 small bugs with resending tcp data
2014-10-24 22:40:44 +02:00
saradickinson c5d63ed9d7 Fix 2 small bugs with resending tcp data 2014-10-24 14:38:22 +00:00
Willem Toorop 6c23f26a90 Remove some old leftovers 2014-10-24 16:30:59 +02:00
Willem Toorop b063462786 Move examples to spec dir 2014-10-24 14:39:58 +02:00
Willem Toorop 87c54886c8 pass LDFLAGS to libgetdns_ext_{event,ev,uv} too
Thanks Ondřej Surý
2014-10-24 14:15:43 +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 432092311e fix: Responses without question RRs (i.e. REFUSED) 2014-10-23 16:02:34 +02:00
Willem Toorop 55e0d41d4b fix: Don't init suffix with uninitialized domain 2014-10-23 15:32:35 +02:00
Willem Toorop d03a22ba62 fix: stub udp max_udp_size > 4096 support 2014-10-23 15:17:54 +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 07848b20ff fix: add OPT to query when just options specified 2014-10-23 13:55:37 +02:00
saradickinson 339e4f7049 Fixing async test 2014-10-23 08:42:15 +00:00
saradickinson 88bdbdc972 Crude changes to stub test scripts to allow testing of all transport and recusive mode combinations 2014-10-22 17:09:33 +00:00
Willem Toorop 2d77d02084 Fallback to TCP when TC bit is set
with stub queries...
2014-10-21 00:17:57 +02:00
Willem Toorop ae8105bd78 Bugfix event handling with sync TCP pipelining 2014-10-20 23:51:05 +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 fa02e3ae70 Fix timeout issue with async stub TCP pipelining 2014-10-19 08:08:45 +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
wtoorop 9b64473718 Merge pull request #73 from ngoyal/master
Fix some warnings on OSX
2014-10-18 00:29:26 +02:00
Willem Toorop 181d8cd3f4 stub tcp lookups
And the foundation for tcp keep connections open
2014-10-18 00:25:41 +02:00
Neel Goyal 75d163427c Fix some warnings on OSX 2014-10-17 17:41:43 -04: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 29d5b3e06c Init function for getdns_eventloop_events 2014-10-16 13:19:53 +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 9d1ad9d110 Respond correctly to non-blocking events 2014-10-15 23:32:33 +02:00
Willem Toorop 124de13caa Initialize udp socket nonblocking 2014-10-15 23:28:59 +02:00
Willem Toorop a0cb4e1774 Move stub resolving to stub.c again
Merged hostname.c and service.c in general so that getdns_general_ns can become static.
Removed specialized synchronous handling from return_validation_chain code.
Removed un_timed_resolve (specialized sync handling is not needed anymore)
Renamed inter-object file symbols to priv_<name> and made intra-object symbols static as much as possible.
2014-10-15 23:04:39 +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 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 893605041d libuv extension now working too! 2014-10-15 10:47:36 +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 3ee930d44e Stub resolving with the libmini_event extension 2014-10-13 15:37:45 +02:00
Willem Toorop 21bb7d6197 Timeouts by reference are to count down to 0
To track how much time we've left for a request
2014-10-13 15:36:21 +02:00
Willem Toorop c9de395b44 Fix correctly tracking of outstanding events 2014-10-13 15:35:41 +02:00
Willem Toorop f61d2ae262 write and run methods for eventloop extension 2014-10-10 14:48:52 +02:00
Willem Toorop 2172a7280a libuv according to new scheme 2014-10-10 11:14:01 +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 65db103c6d Remove obsolete attributes from timeout_data_t 2014-10-07 10:18:29 +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 a9d37df6b8 Preliminary timeout implementation for stubs 2014-10-06 15:31:56 +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
Willem Toorop ad127c9e56 delete a space 2014-09-29 14:41:49 +02:00
Willem Toorop f9046275c1 Initial send and receive a simple udp packet 2014-09-27 01:07:42 +02:00
Willem Toorop 60d1af78c5 Merge branch 'features/gldns' into features/stub-functions
Conflicts:
	src/sync.c
2014-09-26 22:17:42 +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 9ebc0beacc Merge branch 'features/gldns' into features/stub-functions 2014-09-24 23:17:18 +02:00
Willem Toorop ea4ee27612 Merge branch 'master' into features/gldns 2014-09-24 23:16:46 +02:00
Willem Toorop 17e5262acc Import mini_event & rbtree from unbound 2014-09-24 13:50:28 +02:00
Willem Toorop 4daa944e9e Dnssec extensions set the do bit 2014-09-24 12:29:08 +02:00
Willem Toorop 8025b729de Link in stub functions again 2014-09-23 10:51:00 +02:00
Willem Toorop ceb211dfec Merge branch 'features/gldns' into features/stub-functions
Conflicts:
	src/sync.c
2014-09-23 10:44:48 +02:00
Willem Toorop ee304d7181 Compatibility functions & make depend 2014-09-23 10:12:34 +02:00
Willem Toorop a9b5cbef44 Make travis pass (use funcs from ldns < 1.6.17) 2014-09-22 16:32:33 +02:00
wtoorop d492e388e2 Merge pull request #66 from saradickinson/ldns_stub_sync
Thank you Sara.
Travis fails because it uses a version of ldns that doesn't include ldns_resolver_query_status yet (introduced on 19 march 2013, so they have a version before 1.6.17).  I guess we could simply replace with ldns_resolver_query for the time being...
2014-09-17 22:41:21 +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
Willem Toorop e598f64e80 gldns _buf support + add_opt_parameters extension 2014-09-16 15:43:20 +02: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 635879e0ae stub.[ch] not in this branch 2014-09-09 17:22:20 +02:00
Willem Toorop 26578220af Make wire format query packet function 2014-09-09 17:19:52 +02:00
Willem Toorop c40af0d316 s/sbuffer/gbuffer/g in src/Makefile.in too 2014-09-09 17:16:43 +02:00
Willem Toorop ed8847a9cb s/sbuffer/gbuffer/g 2014-09-09 16:49:57 +02:00
Willem Toorop 3468ea13e6 And not actually include on-board ldns2 (gldns) 2014-09-09 15:42:28 +02:00
Willem Toorop 83f53bd2ea With on-board ldns (new ldns2 core from unbound)
Only the symbols for internal use.  No usage yet.
2014-09-09 15:11:32 +02:00
John Dickinson 372c980453 Added a check for transport 2014-09-04 14:50:09 +00:00
Willem Toorop a9dbea22ad Chase NSEC and NSEC3 with return_validation_chain 2014-09-03 20:53:26 +02:00
Willem Toorop 772efb1186 [API 0.506] GETDNS_RESPSTATUS_ALL_BOGUS_ANSWERS
return code for with the dnssec_return_only_secure extension
2014-09-03 16:09:50 +02:00
Willem Toorop f72a38b3cc Remove old version of spec in clumsy location 2014-09-03 15:52:16 +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 d0eea3ed7b [API 0.503] Add CDNSKEY and OPENPGPKEY rr types 2014-09-03 15:33:03 +02:00
Willem Toorop 1d10483694 Temporarily disable timeout test 3
because of unpredictable results
2014-09-02 22:49:13 +02:00
Willem Toorop 555e467436 <rr>_unknown rdf for unknown/supported types
Also when underlying ldns doesn't support it
2014-09-02 22:31:50 +02:00
Willem Toorop c8872d658f Fix referencing non-existant structs 2014-08-25 11:04:43 +02:00
Willem Toorop 658e8cab77 Shumon's support for CDS, CDNSKEY & OPENPGPKEY 2014-08-21 14:26:41 +02:00
Willem Toorop b4131d4540 Don't try showing unsupported ldns rdata fields 2014-08-21 14:25:42 +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
ngoyal fb59ecd054 Fix sync test failures. 2014-07-28 17:56:40 -04:00
ngoyal f3d3ac3bac Fix issue #117 2014-07-28 17:46:40 -04:00
Willem Toorop 8bd5baef6f sync funcs should GETDNS_RETURN_GOOD on timeouts 2014-07-01 23:40:49 +02:00
Willem Toorop fc2f091f05 timed synchronous resolves
Also returns an response dict with status GETDNS_RESPSTATUS_ALL_TIMEOUT on timeout
2014-07-01 23:31:40 +02:00
Glen Wiley d3dd1015f7 removed -release, added -version-info to libtool calls 2014-06-19 11:27:05 -04:00
Glen Wiley 20c6889f9d added _BSD_SOURCE for linux to solve some lingering compile issues 2014-06-02 11:40:58 -04:00
Glen Wiley ac0b808671 tweaking u_char checks 2014-06-02 10:50:52 -04:00
Glen Wiley e284a702a8 removed define for u_char since it breaks some builds 2014-06-02 09:48:30 -04:00
Glen Wiley 0280c8fa83 fixed configure test for libevent 1.x on RHEL/CentOS 2014-06-02 08:34:34 -04:00
Willem Toorop ef3db96555 Merge branch 'master' into v0.1.2 2014-05-26 15:58:40 +02:00
Willem Toorop 45ac1bc7ae Make libev work on Fedora too 2014-05-26 15:56:30 +02:00
Willem Toorop 885c5447be Typo fix. symfiles have the .symbols extension 2014-05-26 15:22:22 +02:00
Willem Toorop 76c6105824 Only export symbols that are really there 2014-05-26 15:19:02 +02:00
Glen Wiley c79ce04b38 minor tweaks to address old versions of libtool 2014-05-23 12:15:53 -04:00
Willem Toorop d65496f787 Anticipate absense of implicit DSO linking 2014-05-23 13:40:56 +02:00
Willem Toorop f78e3d74ab pretty print bindata's representing IP addresses 2014-05-22 18:31:30 +02:00
John Dickinson 06bec6645b Added code to construct a fake packet to allow the RCODE to be returned when libunbound refuses a query 2014-05-22 15:25:36 +00:00
John Dickinson ffe87138c5 Added support for specify_class 2014-05-21 14:50:01 +00:00
Willem Toorop 26faaa67c1 Fix building docs for blddir != srcdir 2014-05-21 16:21:45 +02:00
Willem Toorop 0c02f99a77 on clean cleanup extensions too 2014-05-21 15:57:14 +02:00
Willem Toorop 6262e3d8c8 Fix installs and distcleans for blddir != srcdir 2014-05-21 15:42:58 +02:00
Willem Toorop bef1e5ce95 Only expose public symbols
Adapted Makefile.in accidentally already came with previous commit:
	61e28884b2
2014-05-21 10:17:16 +02:00
Willem Toorop 61e28884b2 Loose non standard unexposed prototypes
getdns_list_add_item & getdns_dict_copy
2014-05-21 10:13:02 +02:00
Willem Toorop 943d1e916a Make example programs find uninstalled .so too 2014-05-21 07:15:55 +02:00
Willem Toorop 448b033df5 Make test program find uninstalled .so 2014-05-20 17:15:54 +02:00
Willem Toorop 57b51a5dcc prefer includes local to builddir 2014-05-19 15:50:34 +02:00
Willem Toorop 76dcab7850 Fix -I and -L flags to look into builddir too
And removal of looking into /usr/local/include and /usr/local/lib.
I hope this doesn't break anything...
2014-05-19 15:23:40 +02:00
Willem Toorop c28e6f44c4 rdata fields for MX 2014-05-15 16:11:32 +02:00
Neel Goyal 22d305b3e0 Fix signal.h include. 2014-03-12 21:32:18 -04:00
ngoyal f8a3f4bd3f Update check_getdns_dict_destroy.h 2014-03-12 21:22:51 -04:00
ngoyal b488432c24 Fix for undeclared SIGABRT 2014-03-12 21:20:17 -04: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 8e144d5648 Convert test programs to not use libevent. 2014-03-07 14:32:35 -05: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
Glen Wiley 9c5d8aa687 fixed detecting libevent v1 if libevent v2 is not available 2014-03-07 02:50:00 -05:00
Glen Wiley dffcb32a97 added LDFLAGS specific to extension libs 2014-03-07 02:19:32 -05:00
Neel Goyal 1ca679d313 Fix for make uninstall error 2014-03-06 22:10:50 -05:00
ngoyal 3c399b3b19 Update Makefile.in 2014-03-06 16:14:39 -05:00
Glen Wiley 6d661193e7 Merge branch 'master' of https://github.com/getdnsapi/getdns 2014-03-06 11:44:16 -05:00
Glen Wiley 8036639f91 do not build libev/uv/event extensions by default, handle --with/without 2014-03-06 11:43:18 -05: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
Saúl Ibarra Corretgé 785ebf4ed6 Handle possible allocation failure 2014-03-05 14:27:15 +01:00
Saúl Ibarra Corretgé edd2c81bc5 Remove uneeded check
libuv will always pass the handle to the close callback
2014-03-05 14:27:15 +01:00
Saúl Ibarra Corretgé d51840efd7 Removed uv_data->polling field
It's not necessary as uv_is_active can be used to check if a handle
is started or not.
2014-03-05 14:27:15 +01:00
Neel Goyal 108f72bc36 Fix for issue #18 - allow destroy in callback 2014-03-04 17:00:18 -05:00
Neel Goyal 28992ff992 Add missing cpp guards for getdns_extra.h 2014-03-03 16:08:41 -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
ngoyal f149dedaaf Fix an install error for getdns_extra.h 2014-02-28 15:33:14 -05:00
Neel Goyal 2b19661e77 Define u_char if including event.h for libevent1 2014-02-25 14:21:44 -05:00
Willem Toorop d7c5122565 Merge branch 'develop' into release_20140225 2014-02-25 14:26:34 +01: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 bea6fde7bf relative references to libtool to smooth over binary dist build 2014-02-24 18:59:25 -05:00
Neel Goyal 72bb33ca2e Fix an issue builing extensions. Make sure to look for the headers as well as the libs 2014-02-24 16:35:48 -05:00
Glen Wiley ba5c7beec4 tweaks to build binary dist tarball 2014-02-24 14:53:14 -05:00
Glen Wiley 8068e02ffc Merge branch 'develop' of https://github.com/verisign/getdns into develop 2014-02-24 09:26:56 -05:00
Glen Wiley 6dd03b1cdc fixed spelling of NLnet in licenses, fixed make clean errs in docs 2014-02-24 09:26:20 -05:00
Willem Toorop 50a60db918 [API 0.5] Print result with example-reverse 2014-02-24 15:17:40 +01: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 91daf87f4b Update check_getdns - build one per event loop abstraction 2014-02-21 15:42:06 -05:00
Neel Goyal 2594d3d575 Modify check getdns to only use default loop. Adding changes for extensions in next commit 2014-02-21 14:08:37 -05:00
Neel Goyal 2f0bcd665b Compile examples 2014-02-21 12:47:33 -05:00
Neel Goyal 80703de636 Begin refactor out extensions into libs. 2014-02-21 12:23:20 -05:00
Willem Toorop 6e8ace78ff Match examples with current spec [API 0.402] 2014-02-21 12:55:34 +01: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 4f266d1a88 Change make test to only call check_getdns 2014-02-20 15:51:51 -05:00
Neel Goyal 48fea8d9e0 Add getdns_context_set_return_dnssec_status 2014-02-20 15:42:10 -05:00
Craig E. Despeaux 097e6936cb Fix failing tests 2014-02-20 11:53:57 -05:00
Glen Wiley 344893f87f fixed license and copyright notices 2014-02-20 09:12:19 -05:00
Willem Toorop f009158a74 GETDNS_COMPILATION_COMMENT & include spec in dist 2014-02-20 14:07:04 +01: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