summaryrefslogtreecommitdiff
path: root/runtime/ops/tls.rs
AgeCommit message (Collapse)Author
2021-06-29feat: Add "deno_net" extension (#11150)Bartek Iwańczuk
This commits moves implementation of net related APIs available on "Deno" namespace to "deno_net" extension. Following APIs were moved: - Deno.listen() - Deno.connect() - Deno.listenTls() - Deno.serveHttp() - Deno.shutdown() - Deno.resolveDns() - Deno.listenDatagram() - Deno.startTls() - Deno.Conn - Deno.Listener - Deno.DatagramConn
2021-05-11fix(tls): flush send buffer in the background after closing TLS stream (#10146)Bert Belder
In #9118, TLS streams were split into a "read half" and a "write half" using tokio::io::split() to allow concurrent Conn#read() and Conn#write() calls without one blocking the other. However, this introduced a bug: outgoing data gets discarded when the TLS stream is gracefully closed, because the read half is closed too early, before all TLS control data has been received. Fixes: #9692 Fixes: #10049 Fixes: #10296 Fixes: denoland/deno_std#750
2021-05-08cleanup(ops): remove unused ZeroCopyBuf arg-types (#10530)Aaron O'Mullan
2021-05-02refactor(runtime): use Extensions (#10461)Aaron O'Mullan
2021-04-26fix(tls): throw meaningful error when hostname is invalid (#10387)Bert Belder
`InvalidDNSNameError` is thrown when a string is not a valid hostname, e.g. it contains invalid characters, or starts with a numeric digit. It does not involve a (failed) DNS lookup.
2021-04-12refactor(deno): remove concept of bin & json ops (#10145)Aaron O'Mullan
2021-04-12feat(runtime/permissions): prompt fallback (#9376)crowlKats
Co-authored-by: Yoshiya Hinosawa <stibium121@gmail.com> Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2021-04-10feat(unstable): ALPN config in listenTls (#10065)Luca Casonato
This commit adds the ability for users to configure ALPN protocols when calling `Deno.listenTls`.
2021-04-06refactor: rewrite "net" ops to use serde_v8 (#10028)Aaron O'Mullan
2021-04-05refactor: convert ops to use serde_v8 (#10009)Aaron O'Mullan
This commit rewrites most of the ops to use "serde_v8" instead of "json" serialization.
2021-04-02refactor(ops): remove variadic buffers (#9944)Aaron O'Mullan
2021-03-25upgrade: Rust 1.51.0 (#9895)Yusuke Tanaka
2021-03-19chores: enforce type ResourceId across codebase (#9837)Divy Srivastava
2021-03-18normalize rids (#9832)crowlKats
2021-03-18move runtime ops to serde ops (#9828)crowlKats
2021-03-17refactor: clean up permission handling (#9367)crowlKats
2021-02-11fix(runtime/tls): handle invalid host for connectTls/startTls (#9453)Erik Price
2021-02-07fix(runtime/tls): remove unnecessary clone calls (#9429)Ben Noordhuis
2021-01-29refactor: IO resource types, fix concurrent read/write and graceful close ↵Bert Belder
(#9118) Fixes: 9032.
2021-01-12feat(runtime/tls): add global tls session cache (#8877)Ben Noordhuis
Fixes #8875
2021-01-11upgrade: tokio 1.0 (#8779)Bartek Iwańczuk
Co-authored-by: Bert Belder <bertbelder@gmail.com>
2021-01-10update copyright to 2021 (#9081)Ryan Dahl
2020-12-30BREAKING(unstable): Use hosts for net allowlists (#8845)Nayeem Rahman
Allowlist checking already uses hosts but for some reason requests, revokes and the runtime permissions API use URLs. - BREAKING(lib.deno.unstable.d.ts): Change NetPermissionDescriptor::url to NetPermissionDescriptor::host - fix(runtime/permissions): Don't add whole URLs to the allowlist on request - fix(runtime/permissions): Harden strength semantics: ({ name: "net", host: "127.0.0.1" } is stronger than { name: "net", host: "127.0.0.1:8000" }) for blocklisting - refactor(runtime/permissions): Use tuples for hosts, make the host optional in Permissions::{query_net, request_net, revoke_net}()
2020-12-29refactor(runtime): return iterator from resolve_addr (#8891)Yusuke Tanaka
2020-12-16refactor: rewrite ops to use ResourceTable2 (#8512)Bartek Iwańczuk
This commit migrates all ops to use new resource table and "AsyncRefCell". Old implementation of resource table was completely removed and all code referencing it was updated to use new system.
2020-12-15fix: make DNS resolution async (#8743)Yusuke Tanaka
This commit adds a new function that is an asynchronous version of `resolve_addr` using `tokio::net::lookup_host`, and accordingly, renames the synchronous version to `resolve_addr_sync`. This allows async ops to resolve hosts with non-blocking.
2020-12-13refactor: deno_runtime crate (#8640)Bartek Iwańczuk
This commit moves Deno JS runtime, ops, permissions and inspector implementation to new "deno_runtime" crate located in "runtime/" directory. Details in "runtime/README.md". Co-authored-by: Ryan Dahl <ry@tinyclouds.org>