Commit graph

323 commits

Author SHA1 Message Date
Willem Toorop
48ecf95108 Merge branch 'master' into features/padding 2021-01-22 10:29:50 +01:00
George Thessalonikefs
08968baec1 - Fix error cases when udp-connect is set and send() returns an error
(modified patch from Xin Li @delphij).
2020-12-16 17:11:41 +01:00
W.C.A. Wijngaards
5906811ff1 - Fix #358: Squelch udp connect 'no route to host' errors on low
verbosity.
2020-12-01 09:09:13 +01:00
W.C.A. Wijngaards
e4bdc527ba - Fix assertion failure on double callback when iterator loses
interest in query at head of line that then has the tcp stream
  not kept for reuse.
2020-11-30 09:41:33 +01:00
W.C.A. Wijngaards
67d541d690 - Fix compile warnings for windows. 2020-11-27 10:01:55 +01:00
W.C.A. Wijngaards
8ffdbc2714 - Fix when use free buffer to initialize rbtree for stream reuse. 2020-11-27 09:57:08 +01:00
W.C.A. Wijngaards
3fb0493d3f - Clear readagain upon decommission of pending tcp structure. 2020-11-26 12:23:18 +01:00
W.C.A. Wijngaards
e50152aa1f - Fix readagain and writeagain callback functions for comm point
cleanup.
2020-11-25 13:46:28 +01:00
W.C.A. Wijngaards
d05c259458 - Attempt fix for libevent state in tcp reuse cases after a packet
is written.
2020-11-25 12:12:35 +01:00
W.C.A. Wijngaards
4b644b7965 - Better fix for reuse tree comparison for is-tls sockets. Where
the tree key identity is preserved after cleanup of the TLS state.
2020-11-25 10:22:11 +01:00
W.C.A. Wijngaards
15e8f5c6d4 - Fix udp-connect on FreeBSD, do send calls on connected UDP socket. 2020-11-25 09:55:01 +01:00
W.C.A. Wijngaards
978d3840dc - Fix crash when TLS connection is closed prematurely, when
reuse tree comparison is not properly identical to insertion.
2020-11-24 16:58:51 +01:00
Wouter Wijngaards
ead06af086 Merge branch 'master' into stream-reuse 2020-11-24 08:20:07 +01:00
George Thessalonikefs
b0247b6e93 Merge branch 'master' into edns-string 2020-11-23 16:58:30 +01:00
George Thessalonikefs
201b949689 Merge branch 'master' into edns-string 2020-11-23 16:35:58 +01:00
W.C.A. Wijngaards
9cc8aa1ddf - Option to toggle udp-connect, default is enabled. 2020-11-23 11:06:53 +01:00
W.C.A. Wijngaards
9423b5b8b2 Merge branch 'master' into stream-reuse 2020-11-23 09:49:26 +01:00
W.C.A. Wijngaards
8143ce6967 stream reuse, review comments. 2020-11-23 09:40:15 +01:00
W.C.A. Wijngaards
6f4c79ab95 stream reuse, fix review comments. 2020-11-23 09:37:26 +01:00
W.C.A. Wijngaards
d83b1979c4 stream reuse, debug output with verbose level instead of number. 2020-11-23 09:29:26 +01:00
W.C.A. Wijngaards
b891fe113c - Retry for interfaces with unused ports if possible. 2020-11-12 13:36:37 +01:00
W.C.A. Wijngaards
26aa550bd2 - Fix to connect() to UDP destinations, default turned on,
this lowers vulnerability to ICMP side channels.
2020-11-12 12:27:41 +01:00
W.C.A. Wijngaards
78e9b8949c Merge branch 'master' into stream-reuse
Resolved comm_point_start_listening conflict for socket close.
2020-10-21 09:54:03 +02:00
W.C.A. Wijngaards
2eb39abbaf - Fix that reuse_tcp_close_oldest sets item_on_lru_list to 0.
- Fix to add assertions to reuse_tcp_select_id and unit test.
- Fix that if no tcp buffers then pending tcp query stops.
2020-10-21 09:49:55 +02:00
Ralph Dolmans
eb799026ff Replace edns-client-tag with edns-client-string option 2020-09-30 23:17:53 +02:00
Ralph Dolmans
7da369e85a - Add edns-client-tag-opcode option 2020-09-23 12:09:48 +02:00
W.C.A. Wijngaards
47a5dc8cae - Refactor to use sock_strerr shorthand function. 2020-08-31 09:12:01 +02:00
W.C.A. Wijngaards
a6dc0743b4 - Merge PR #293: Add missing prototype. Also refactor to use the new
shorthand function to clean up the code.
2020-08-31 08:41:34 +02:00
W.C.A. Wijngaards
49019ba3a9 Review fix: defense check of qdcount in debug output. 2020-08-25 16:07:25 +02:00
W.C.A. Wijngaards
a83fc176cc Review fix: remove unused variables. 2020-08-25 13:16:46 +02:00
W.C.A. Wijngaards
7a211e5a07 stream reuse, fix tls close by upstream after timeout write event handling. 2020-07-30 17:51:13 +02:00
W.C.A. Wijngaards
444681af9d stream reuse, defensible wait add and debug log with details for requeue. 2020-07-27 17:12:23 +02:00
W.C.A. Wijngaards
2932d530c1 stream reuse, send queries one by one when upstream refuses multiple queries,
by closing the connection.
2020-07-27 16:59:46 +02:00
Ralph Dolmans
2fe398f4bf EDNS client tags - insert configured tags into tree 2020-07-24 16:00:13 +02:00
Ralph Dolmans
16029281a8 Start of EDNS client tags implementation. 2020-07-23 17:17:44 +02:00
W.C.A. Wijngaards
f1c4a4d515 stream reuse, fix cleanup with streams in the connection table. 2020-07-22 15:20:58 +02:00
W.C.A. Wijngaards
2d20edb39f stream reuse, free up elements that are connected in outside network delete. 2020-07-22 10:30:50 +02:00
W.C.A. Wijngaards
a7776a15e5 stream reuse, make reuse possible straight away after first query to address. 2020-07-13 16:11:52 +02:00
W.C.A. Wijngaards
b71695e8bb stream reuse, update lru when reuse elements are used with lru touch routine. 2020-07-13 15:59:23 +02:00
W.C.A. Wijngaards
19a35fb839 stream reuse, write and read again if more data can go over the channel,
this amortizes the event loop mechanism for busy channels, for performance.
2020-07-13 15:16:59 +02:00
W.C.A. Wijngaards
7a69ff4182 fix that ssl_handle_it() uses tcp_is_reading in tcp_write_and_read mode.
fix that netevent tcp_write_and_read mode does not close due to error from
assert that not both write and read happen at the same time.
2020-07-10 15:37:30 +02:00
W.C.A. Wijngaards
e431676457 stream reuse, fix bad id in reply errors. 2020-07-10 15:13:16 +02:00
W.C.A. Wijngaards
46a364be8e stream reuse, neater code for tree by id and use callback routine for timer. 2020-07-09 16:50:57 +02:00
W.C.A. Wijngaards
ad6fa1eb45 stream reuse, comment improved 2020-07-09 16:37:40 +02:00
W.C.A. Wijngaards
d87774c3c6 stream reuse, fix decommission to first remove from tree and then do the
callbacks and then delete the element.
2020-07-09 16:34:48 +02:00
W.C.A. Wijngaards
79f315f480 stream reuse, fix double callback and double delete, items are in the tree. 2020-07-09 15:47:24 +02:00
W.C.A. Wijngaards
8201d1422b stream reuse, fix to put id number in waiting tcp packet. 2020-07-09 15:35:32 +02:00
W.C.A. Wijngaards
b1ea8273f0 stream reuse, fix to not keep stream when it is in error and closed.
stream reuse, fix to stop listening on the fd before rw mode change.
stream reuse, fix waiting tcp id value stored before tree insert.
stream reuse, fix to not double delete pend.query.
2020-07-09 14:29:56 +02:00
W.C.A. Wijngaards
4e44e8663d stream reuse, fix to return key pointer from reuse_tcp_by_id_find. 2020-07-09 14:06:21 +02:00
W.C.A. Wijngaards
9b583d2331 stream reuse, the id for pending stored in waiting_tcp structure, because
there can be multiple messages waiting for reply.
2020-07-09 13:58:44 +02:00