Jason Volk
|
79475d2ba3
|
ircd::net: Set socket non-blocking after handshake.
|
2019-04-12 05:54:11 -07:00 |
|
Jason Volk
|
6d15db176d
|
ircd::net: Fix mislabeled ios::descriptor.
|
2019-04-10 22:59:23 -07:00 |
|
Jason Volk
|
1d45f0bc5b
|
ircd::net: Remove this prefetch.
|
2019-04-10 22:35:11 -07:00 |
|
Jason Volk
|
5c359f22f3
|
ircd::net::socket: Change behavior of non-blocking read_() calls to not throw for EAGAIN.
|
2019-04-09 21:08:15 -07:00 |
|
Jason Volk
|
3a9e85c294
|
ircd::net::addrs: Tweak interface detail; workaround issues.
|
2019-04-09 20:05:48 -07:00 |
|
Jason Volk
|
d2546120ee
|
ircd: Add descriptor participation for all asynchronous operations.
|
2019-03-27 13:04:12 -07:00 |
|
Jason Volk
|
45d29ed5cf
|
ircd::net: Add log messages reporting IPv6 init status; handle errors during check.
|
2019-03-25 16:33:22 -07:00 |
|
Jason Volk
|
a54c5f44e4
|
ircd::net: Add conf item to toggle ipv6 for ircd::net::. Auto-detect viability on net::init.
|
2019-03-25 15:18:06 -07:00 |
|
Jason Volk
|
c0cbfd2d23
|
ircd::net: Add util to detect usable ipv6 interface.
|
2019-03-25 15:18:06 -07:00 |
|
Jason Volk
|
28569176f2
|
ircd::net: Use a structured argument to addrs closure; add more data.
|
2019-03-25 15:18:06 -07:00 |
|
Jason Volk
|
8c27cb847a
|
ircd::net: Add conditional interface to getifaddrs() w/ console cmd.
|
2019-03-25 13:56:08 -07:00 |
|
Jason Volk
|
4d3fd753e1
|
ircd::net: Add interface for listener bound socket information; improve net listen console cmd.
|
2019-03-25 12:55:59 -07:00 |
|
Jason Volk
|
9d552cd88a
|
ircd::net: Improve ipport/ep to_string related.
|
2019-03-25 12:25:25 -07:00 |
|
Jason Volk
|
7f5f07509a
|
ircd::net::dns: Add utils to properly check for empty records in JSON.
|
2019-03-24 20:13:23 -07:00 |
|
Jason Volk
|
fe81c30806
|
ircd::net: Refactor dual stack integration.
|
2019-03-24 19:33:03 -07:00 |
|
Jason Volk
|
be563a9f18
|
ircd::net: Fix constness.
|
2019-03-24 16:21:01 -07:00 |
|
Jason Volk
|
c3c99ecea8
|
ircd::net: Interface support for sockopt IPPROTO_IPV6 IP_V6ONLY.
|
2019-03-24 16:20:05 -07:00 |
|
Jason Volk
|
138b7bff65
|
ircd::net: Interface wrap boost::asio::ip::make_address().
|
2019-03-24 15:59:46 -07:00 |
|
Jason Volk
|
71b86df0fe
|
ircd::net::dns: Reorg various utilities from dns::cache:: to dns::.
|
2019-03-24 14:50:26 -07:00 |
|
Jason Volk
|
55af53e2a0
|
ircd::net::dns::cache: Add addl utils random_choice and is_error().
|
2019-03-24 14:47:07 -07:00 |
|
Jason Volk
|
a1ac9cb356
|
ircd::net::dns: Expose more cache utils to public interface.
|
2019-03-24 14:06:47 -07:00 |
|
Jason Volk
|
77648137e9
|
Revert "ircd: Remove use of all unwind::exceptional and unwind::nominal devices."
This reverts commit 4f243826c2 .
|
2019-03-22 21:06:28 -07:00 |
|
Jason Volk
|
68e3655a1d
|
ircd::net::dns: Refactor system for the !dns room.
|
2019-03-21 18:24:36 -07:00 |
|
Jason Volk
|
e133cd5a25
|
ircd::net: Add specific allow(acceptor) rather than using start(acceptor).
|
2019-03-21 17:07:35 -07:00 |
|
Jason Volk
|
a6886dafe6
|
ircd::net: Bail early if no SNI sent by client.
|
2019-03-21 16:54:36 -07:00 |
|
Jason Volk
|
7db86a58c2
|
ircd::net: Tweak stringification of net::hostport.
|
2019-03-19 10:11:29 -07:00 |
|
Jason Volk
|
29ba0d214b
|
ircd::net: Reinterface string(ippaddr) related.
|
2019-03-18 12:39:21 -07:00 |
|
Jason Volk
|
2eb9fff55f
|
ircd::net: Reorg acceptor internal control panel; provide external start()/stop().
|
2019-03-16 16:28:28 -07:00 |
|
Jason Volk
|
f2f2afb8c4
|
ircd::net: Reorg listener/acceptor external interface.
|
2019-03-16 16:28:28 -07:00 |
|
Jason Volk
|
b3a875bc63
|
ircd::net::acceptor: Don't condition response for SNI here.
|
2019-03-16 12:37:44 -07:00 |
|
Jason Volk
|
213c46d9f8
|
ircd::net: Add interface to get cipher list from acceptor w/ console cmd.
|
2019-03-13 17:32:39 -07:00 |
|
Jason Volk
|
8daddfb84a
|
ircd::net::listener: Add cast for internal acceptor access.
|
2019-03-13 17:32:16 -07:00 |
|
Jason Volk
|
d6e97f6aab
|
ircd::net: Send server name identification when opening client connections.
|
2019-03-13 13:44:41 -07:00 |
|
Jason Volk
|
b3526298a9
|
ircd::net::acceptor: Rename logger to net.listen.
|
2019-03-13 13:11:53 -07:00 |
|
Jason Volk
|
cb979d96e7
|
ircd::net::acceptor: Add callback stack framework for dynamic server name identification.
|
2019-03-13 13:11:53 -07:00 |
|
Jason Volk
|
721039f359
|
ircd::net::acceptor: Add conf::item to blacklist ciphers out of the supported cipher list.
|
2019-03-12 18:41:05 -07:00 |
|
Jason Volk
|
969a15c341
|
ircd::net::acceptor: Add conf::item to specify a default whitelist of ciphers in openssl format.
|
2019-03-12 18:41:05 -07:00 |
|
Jason Volk
|
38f7d61020
|
ircd::net::socket: Add non-blocking check() query with interface.
|
2019-03-12 18:41:05 -07:00 |
|
Jason Volk
|
4f243826c2
|
ircd: Remove use of all unwind::exceptional and unwind::nominal devices.
|
2019-03-12 18:41:05 -07:00 |
|
Jason Volk
|
ae4dc7db9b
|
ircd::net::dns: Add a named logger specifically for net::dns; addl debug msgs.
|
2019-03-11 18:16:04 -07:00 |
|
Jason Volk
|
0c24ea5f40
|
ircd::net: Allow cipher list and curve list in the listener configuration object.
|
2019-03-10 16:59:35 -07:00 |
|
Jason Volk
|
d658729d07
|
ircd::net: Automate ecdh selections by default.
|
2019-03-10 16:55:39 -07:00 |
|
Jason Volk
|
db30477e51
|
ircd::net::acceptor: Relax default flags.
|
2019-03-10 16:55:39 -07:00 |
|
Jason Volk
|
a4f02e4e4a
|
ircd::net::acceptor: Remove any default DH params when nothing supplied in config.
|
2019-03-10 14:31:54 -07:00 |
|
Jason Volk
|
c220c0abaf
|
ircd::net::acceptor: Allow all flags to be set through options structure.
|
2019-03-10 14:16:33 -07:00 |
|
Jason Volk
|
c6975804e7
|
ircd::net: Move acceptors class from being nested in listeners.
|
2019-03-10 14:04:03 -07:00 |
|
Jason Volk
|
98a3535e06
|
ircd::net: Elaborate ipaddr interface; move apropos string utils from ipport.h
|
2019-03-08 11:46:50 -08:00 |
|
Jason Volk
|
a9969bfb4b
|
ircd::net: Show current cipher in handshake debug log msgs.
|
2019-03-05 11:37:49 -08:00 |
|
Jason Volk
|
e33c4861cb
|
ircd::net: Disable TLS 1.0.
|
2019-03-04 16:48:05 -08:00 |
|
Jason Volk
|
b398e8f424
|
ircd::net: Ignore empty string values in listener config object.
|
2019-03-04 16:38:39 -08:00 |
|
Jason Volk
|
5752c32de9
|
ircd::net: Eliminate the handle_set unset on exception.
|
2019-03-04 14:29:21 -08:00 |
|
Jason Volk
|
fbbbb38e75
|
ircd::net: Fix alignment of address in net::ipport.
|
2019-02-28 17:12:04 -08:00 |
|
Jason Volk
|
af6ac4a2ac
|
ircd: Replace various unwind count patterns with scope_count.
|
2019-02-28 17:12:03 -08:00 |
|
Jason Volk
|
4f721f48e5
|
Eliminate friend-injection.
|
2019-02-15 18:48:59 -08:00 |
|
Jason Volk
|
810a6017dc
|
ircd::net: Allow allow_self_signed to cover more cases.
|
2019-02-07 02:36:02 -08:00 |
|
Jason Volk
|
aeea524ac9
|
ircd::net: Improve listener interface w/ instance reference in callbacks.
|
2019-01-18 10:14:37 -08:00 |
|
Jason Volk
|
cbf456a388
|
ircd: Rename and refactor ircd::assertion interface into ircd::panic.
|
2019-01-13 16:37:31 -08:00 |
|
Jason Volk
|
136d3a61a3
|
ircd::net::acceptor: Move socket close calls to exception handlers.
|
2019-01-04 12:44:29 -08:00 |
|
Jason Volk
|
c15a44f921
|
ircd::net: Improve socket identification in various log messages.
|
2018-12-31 12:57:32 -08:00 |
|
Jason Volk
|
29e7fa3515
|
ircd::ctx: Use closure for continuation.
|
2018-12-22 21:03:14 -08:00 |
|
Jason Volk
|
37ba013413
|
ircd::ctx: Simplify continuation; eliminate to_asio derived type.
|
2018-12-22 20:11:00 -08:00 |
|
Jason Volk
|
c2b344b74e
|
ircd: Allow exceptions to propagate from various interruptors.
|
2018-12-22 17:24:48 -08:00 |
|
Jason Volk
|
a3f831e64f
|
ircd::net: Simplify various log messages with loghead().
|
2018-12-12 10:12:24 -08:00 |
|
Jason Volk
|
e97742ef39
|
ircd::net: Add loghead() similar to client::loghead().
|
2018-12-12 10:12:24 -08:00 |
|
Jason Volk
|
45bf911952
|
ircd::conf: Add feature to toggle whether conf item is persisted in a db.
|
2018-12-08 16:27:32 -08:00 |
|
Jason Volk
|
1ba22a21ba
|
ircd: Disperse accumulated global options as conf items in namespaces.
|
2018-12-08 15:36:34 -08:00 |
|
Jason Volk
|
b0bfd87e9f
|
ircd::net: Support interruption of UDP listening.
|
2018-11-29 19:16:05 -08:00 |
|
Jason Volk
|
13bce714ab
|
ircd::rfc1035: Add constant for name buffer size.
|
2018-11-29 18:04:19 -08:00 |
|
Jason Volk
|
ae1c6cc680
|
ircd::net: Catch std::system_error rather than boost here.
|
2018-11-14 18:57:42 -08:00 |
|
Jason Volk
|
9e97ac0564
|
ircd: Simplify system_category / posix errno code test.
|
2018-11-09 00:29:31 -08:00 |
|
Jason Volk
|
36bb0d3175
|
ircd: Integrate all boost::system::system_error with stdlib.
|
2018-11-08 23:05:11 -08:00 |
|
Jason Volk
|
02f64c7f34
|
ircd: Add ios unit to provide a more central control point for asio.
|
2018-10-17 05:12:10 -07:00 |
|
Jason Volk
|
0e5f8141c3
|
ircd::net: Add more tls cert verification exceptions w/ conf.
|
2018-10-04 15:16:15 -07:00 |
|
Jason Volk
|
0df3eafea2
|
modules/s_dns: Simplify/breakdown callback stack related.
|
2018-10-03 14:33:53 -07:00 |
|
Jason Volk
|
58c7a4885b
|
ircd::server: Remove redundant strings; minor cleanup.
|
2018-10-02 22:37:07 -07:00 |
|
Jason Volk
|
450ec3523e
|
modules/s_dns: Consolidate DNS related into units of a single module.
|
2018-10-01 13:56:00 -07:00 |
|
Jason Volk
|
0e6221b8dc
|
ircd::net::dns: Move closure chains out to modules/s_dns; minor reorg.
|
2018-10-01 12:47:49 -07:00 |
|
Jason Volk
|
5b7cf5a8eb
|
ircd::net::dns: Reorg namespace structure related.
|
2018-10-01 12:03:31 -07:00 |
|
Jason Volk
|
05cc6ddf83
|
ircd::net: Move resolver service out to modules/s_resolver.
|
2018-09-30 20:18:32 -07:00 |
|
Jason Volk
|
5a627efaad
|
ircd::net::dns: Move cache related out to modules/s_dns.
|
2018-09-30 20:18:32 -07:00 |
|
Jason Volk
|
ccaaf22cac
|
ircd::net::dns: Use conf item for resolver servers.
|
2018-09-29 19:56:22 -07:00 |
|
Jason Volk
|
33a8430661
|
ircd::net: Reduce string allocations from various log compositions.
|
2018-09-29 17:40:45 -07:00 |
|
Jason Volk
|
d1c28abf7e
|
ircd::net: Minor cleanup various log calls.
|
2018-09-29 17:28:11 -07:00 |
|
Jason Volk
|
cb6f0032a4
|
ircd::net: Expose interface to get socket counter as an ID.
|
2018-09-29 17:15:45 -07:00 |
|
Jason Volk
|
5f37100236
|
ircd::net: Add some specific comparators for ipport.
|
2018-09-29 16:46:02 -07:00 |
|
Jason Volk
|
b4e4f0165f
|
ircd::net: Deinline some ipport ctors.
|
2018-09-29 16:39:14 -07:00 |
|
Jason Volk
|
ca8082d01b
|
ircd::net: Relax this assertion with a log warning.
|
2018-09-24 23:10:27 -07:00 |
|
Jason Volk
|
8d435305d0
|
ircd::net: Wait for pending resolver tags to complete on shutdown.
|
2018-09-17 21:31:23 -07:00 |
|
Jason Volk
|
bbc26ebb75
|
ircd::net: Minor cleanup.
|
2018-09-01 22:21:42 -07:00 |
|
Jason Volk
|
384f5917d0
|
ircd::net::listener: Add callback to proffer the connection before handshake.
|
2018-09-01 22:12:49 -07:00 |
|
Jason Volk
|
60b3cd828e
|
ircd::net: Add listener::name() interface method.
|
2018-08-30 19:15:28 -07:00 |
|
Jason Volk
|
a4bb471cf7
|
ircd::openssl/ircd::net: Add presupplied rfc3526 DH parameters.
|
2018-08-29 16:16:55 -07:00 |
|
Jason Volk
|
fcb5965e45
|
ircd::net: Save listener opts and add accessor.
|
2018-08-29 15:52:37 -07:00 |
|
Jason Volk
|
2b199ae3ed
|
ircd::net/ircd::server/ircd::client: Various cleanup; log messages.
|
2018-08-28 12:06:45 -07:00 |
|
Jason Volk
|
570f715c87
|
ircd::net: Improve listener to-string related.
|
2018-08-17 12:51:48 -07:00 |
|
Jason Volk
|
e5834065ed
|
ircd::net: Unionize datagram for bidirections.
|
2018-07-07 22:10:29 -07:00 |
|
Jason Volk
|
fe0bd19763
|
ircd::net: Add udp listener.
|
2018-07-07 21:33:23 -07:00 |
|
Jason Volk
|
1c6a4bc8d1
|
ircd::net: Ensure flag happens before cancel.
|
2018-07-06 18:40:58 -07:00 |
|
Jason Volk
|
02fcdc8635
|
ircd::net::listener: Add callback-action for proper abstraction.
|
2018-07-06 18:38:08 -07:00 |
|
Jason Volk
|
d3f8a84ca8
|
ircd::net::listener: Add default generated paths for some ssl options.
|
2018-07-01 02:16:00 -07:00 |
|
Jason Volk
|
7cafbc972a
|
ircd::net: Listener defaults to all interfaces.
|
2018-07-01 02:13:29 -07:00 |
|
Jason Volk
|
abe921c3ad
|
ircd::net: Add conf item for default close opts.
|
2018-06-01 04:08:20 -07:00 |
|
Jason Volk
|
8c5b47950f
|
ircd::net: Add conf items for default open_opts.
|
2018-06-01 04:05:19 -07:00 |
|
Jason Volk
|
5a058be4ba
|
ircd::net: Use specific canon service/port variables.
|
2018-05-19 18:49:08 -07:00 |
|
Jason Volk
|
a7b0246830
|
ircd::net: Increase default acceptor timeout for spinapps friends.
|
2018-05-19 18:49:05 -07:00 |
|
Jason Volk
|
0abfc6e927
|
ircd::net: Minor fix spacing.
|
2018-05-19 18:49:02 -07:00 |
|
Jason Volk
|
3e877ebad3
|
ircd::net: Elaborate the peer_cert stack: add sha256; add b64 of sha256.
|
2018-05-10 21:00:32 -07:00 |
|
Jason Volk
|
3f296f2108
|
ircd::net: Fix error fmtstr; use static exception instance for copy.
|
2018-05-09 21:12:01 -07:00 |
|
Jason Volk
|
c47324f741
|
ircd::net::dns: Add retries.
|
2018-05-08 16:03:56 -07:00 |
|
Jason Volk
|
477fe01e40
|
ircd::net::dns: Write question into tag buffer; add send_burst conf item.
|
2018-05-08 16:03:55 -07:00 |
|
Jason Volk
|
a318319ba4
|
ircd::net: attribute noreturn upon advice.
|
2018-05-08 14:32:40 -07:00 |
|
Jason Volk
|
79a44e4587
|
ircd::net: No need to hold this pointer in closure.
|
2018-05-08 14:31:39 -07:00 |
|
Jason Volk
|
618fc8a95e
|
ircd::net::dns: Tweak reference prototypes.
|
2018-05-08 14:29:44 -07:00 |
|
Jason Volk
|
003ecf6357
|
ircd: Remove / update various ctx::interrupted catch blocks for ctx::terminated.
|
2018-05-06 02:06:08 -07:00 |
|
Jason Volk
|
386901f4c2
|
ircd::net: Fix conditions for eptr creation from cached error.
|
2018-05-05 00:55:42 -07:00 |
|
Jason Volk
|
5ba64df248
|
ircd::net: Explicitly construct these things here.
|
2018-05-04 20:43:05 -07:00 |
|
Jason Volk
|
695fb4c9b0
|
ircd::net: Ensure proper string() is resolved; minor cleanup.
|
2018-05-02 12:15:04 -07:00 |
|
Jason Volk
|
4c61eeba89
|
ircd::net::dns: Use explicit static empty record instances.
|
2018-05-02 11:28:34 -07:00 |
|
Jason Volk
|
fb53069c6f
|
ircd::net::dns Include query in callback arguments to prevent any stale captures.
|
2018-05-01 18:56:22 -07:00 |
|
Jason Volk
|
3f2320c49e
|
ircd::net::dns: Strip the cached-error SRV target of its prefix; minor fixes.
|
2018-04-28 17:47:59 -07:00 |
|
Jason Volk
|
30d8c0b961
|
ircd::net::dns: Allocate separate reply buffer in resolver.
|
2018-04-28 17:47:59 -07:00 |
|
Jason Volk
|
a3bea15eef
|
ircd::net::dns: Various send cleanup/asserts; fix hostport reference in eh.
|
2018-04-28 17:47:59 -07:00 |
|
Jason Volk
|
2b41672259
|
ircd::net::dns: Improve the SRV -> A callback chain.
|
2018-04-28 17:47:59 -07:00 |
|
Jason Volk
|
4e796c896a
|
ircd::net::dns: Allow an exception to calling back with nxdomain as an exception.
|
2018-04-28 17:47:58 -07:00 |
|
Jason Volk
|
1d408173dc
|
ircd::net: Return pointer to cached error record for put_error().
|
2018-04-28 16:25:20 -07:00 |
|
Jason Volk
|
48abece29b
|
ircd::net: Improve dns::resolver instance init/fini.
|
2018-04-28 15:31:07 -07:00 |
|
Jason Volk
|
49d83de384
|
ircd::net: Propagate ctx interruption to socket.
|
2018-04-15 17:46:20 -07:00 |
|
Jason Volk
|
f4b2273a4b
|
ircd::net: Add a semaphore to the socket timer to invalidate queued callbacks.
|
2018-04-15 17:46:20 -07:00 |
|
Jason Volk
|
5be18475df
|
ircd::net: Move scope_timeout from socket:: to net:: w/ exposure.
|
2018-04-15 16:43:09 -07:00 |
|
Jason Volk
|
2dad8d8832
|
ircd::net::dns: Empty cache key assertions.
|
2018-04-15 02:44:28 -07:00 |
|
Jason Volk
|
f37176d698
|
ircd::net::dns: Enforce min ttl for cache entries; add conf option.
|
2018-04-14 18:35:48 -07:00 |
|
Jason Volk
|
de295777d0
|
ircd::net::dns: Improve/fix cache management related.
|
2018-04-14 18:13:19 -07:00 |
|
Jason Volk
|
1ad4d58e43
|
ircd::net::dns: Move cache interfaces into cache class.
|
2018-04-14 17:34:07 -07:00 |
|
Jason Volk
|
cf22eacfd3
|
ircd::net::dns: Add static fire-and-forget callbacks for prefetching.
|
2018-04-14 17:15:06 -07:00 |
|
Jason Volk
|
dc81d77c19
|
ircd::net: Improve/comment on various sundry DNS cache related.
|
2018-04-13 18:34:48 -07:00 |
|
Jason Volk
|
6ca4f6eec5
|
ircd::net: Expose interface for socket stat counter.
|
2018-04-13 17:24:07 -07:00 |
|
Jason Volk
|
9dfd9f8258
|
ircd::net: No propagation from accept/handshake handlers; use debug error.
|
2018-04-12 23:07:45 -07:00 |
|
Jason Volk
|
8bf0b4d093
|
ircd::net: Assert proper socket object semantics.
|
2018-04-12 12:52:14 -07:00 |
|
Jason Volk
|
37a0b0362b
|
ircd::net::dns: Post callback away from timeout worker ctx's stack.
|
2018-04-07 11:20:22 -07:00 |
|
Jason Volk
|
603658c722
|
ircd::net: Increase default resolver rate limiting.
|
2018-04-03 23:34:10 -07:00 |
|
Jason Volk
|
751b896c3d
|
ircd:Ⓜ️ Improve various initial conf related keys and routines.
|
2018-03-28 14:11:33 -07:00 |
|
Jason Volk
|
26b33a1845
|
ircd::ctx: Remove the cv_status enum.
|
2018-03-26 23:29:58 -07:00 |
|
Jason Volk
|
980d24b38e
|
ircd::net: Simplify listener config object.
|
2018-03-23 22:17:10 -07:00 |
|
Jason Volk
|
d29b98b0ea
|
ircd::net: Fix these conf item paths.
|
2018-03-22 15:11:29 -07:00 |
|
Jason Volk
|
f5fa5100de
|
ircd::net: Revert no-readahead; post immediate continuation to next stack.
|
2018-03-18 13:51:43 -07:00 |
|
Jason Volk
|
01fc6db0c5
|
ircd::net: Disable readahead for socket's SSL_CTX.
|
2018-03-15 22:25:16 -07:00 |
|
Jason Volk
|
df3243e31d
|
ircd::net: Eliminate the existing net::remote.
|
2018-03-13 22:44:13 -07:00 |
|
Jason Volk
|
cadabb5521
|
ircd::net: Add suite to print a hostname and port or just hostname based on portnum canon.
|
2018-03-13 22:44:13 -07:00 |
|
Jason Volk
|
79f6974f86
|
ircd::net: Wait for destruction of all sockets on shutdown.
|
2018-03-12 18:50:36 -07:00 |
|
Jason Volk
|
949a006950
|
ircd::net: Close socket before its dtor on accept except.
|
2018-03-12 15:56:30 -07:00 |
|