summaryrefslogtreecommitdiff
path: root/ext/net
diff options
context:
space:
mode:
authorRichard Carson <Rscarson@rogers.com>2024-06-17 18:07:48 -0400
committerGitHub <noreply@github.com>2024-06-18 00:07:48 +0200
commit257f0273250087bd5080430fe4c780b208d7986c (patch)
treee488fddde3f9eb095700e8e921385e8a71a202be /ext/net
parent5dec3fd4b75a59574e5aeed4e927d8e3e0c1c683 (diff)
docs: Add documentation to a subset of available extensions (#24138)
I was able to use my experience with some of the Deno extensions to flesh out their documentation a bit I've provided docs for the following: - web - fetch - net - webidl - url - io - crypto - console --------- Signed-off-by: Richard Carson <Rscarson@rogers.com>
Diffstat (limited to 'ext/net')
-rw-r--r--ext/net/README.md120
1 files changed, 93 insertions, 27 deletions
diff --git a/ext/net/README.md b/ext/net/README.md
index 1f9301a2d..915dd4c05 100644
--- a/ext/net/README.md
+++ b/ext/net/README.md
@@ -1,29 +1,95 @@
# deno_net
-This crate implements networking APIs.
-
-This crate depends on following extensions:
-
-- "deno_web"
-- "deno_fetch"
-
-Following ops are provided:
-
-- "op_net_accept_tcp"
-- "op_net_accept_unix"
-- "op_net_connect_tcp"
-- "op_net_connect_unix"
-- "op_net_listen_tcp"
-- "op_net_listen_udp"
-- "op_net_listen_unix"
-- "op_net_listen_unixpacket"
-- "op_net_recv_udp"
-- "op_net_recv_unixpacket"
-- "op_net_send_udp"
-- "op_net_send_unixpacket"
-- "op_dns_resolve"
-- "op_net_connect_tls"
-- "op_net_listen_tls"
-- "op_net_accept_tls"
-- "op_tls_start"
-- "op_tls_handshake"
+**This crate implements networking APIs.**
+
+## Usage Example
+
+From javascript, include the extension's source:
+
+```javascript
+import * as webidl from "ext:deno_webidl/00_webidl.js";
+import * as net from "ext:deno_net/01_net.js";
+import * as tls from "ext:deno_net/02_tls.js";
+```
+
+Then from rust, provide:
+`deno_net::deno_net::init_ops_and_esm::<Permissions>(root_cert_store_provider, unsafely_ignore_certificate_errors)`
+
+Where:
+
+- root_cert_store_provider: `Option<Arc<dyn RootCertStoreProvider>>`
+- unsafely_ignore_certificate_errors: `Option<Vec<String>>`
+- Permissions: A struct implementing `deno_net::NetPermissions`
+
+In the `extensions` field of your `RuntimeOptions`
+
+## Dependencies
+
+- **deno_web**: Provided by the `deno_web` crate
+- **deno_fetch**: Provided by the `deno_fetch` crate
+
+## Provided ops
+
+Following ops are provided, which can be accessed through `Deno.ops`:
+
+### Net
+
+- op_net_accept_tcp
+- op_net_accept_unix
+- op_net_connect_tcp
+- op_net_connect_unix
+- op_net_listen_tcp
+- op_net_listen_udp
+- op_net_listen_unix
+- op_net_listen_unixpacket
+- op_net_recv_udp
+- op_net_recv_unixpacket
+- op_net_send_udp
+- op_net_send_unixpacket
+- op_net_connect_tls
+- op_net_listen_tls
+- op_net_accept_tls
+- op_net_recv_udp
+- op_net_send_udp
+- op_net_join_multi_v4_udp
+- op_net_join_multi_v6_udp
+- op_net_leave_multi_v4_udp
+- op_net_leave_multi_v6_udp
+- op_net_set_multi_loopback_udp
+- op_net_set_multi_ttl_udp
+- op_net_accept_tcp
+- op_net_connect_tcp
+- op_net_listen_tcp
+- op_net_listen_udp
+- op_net_connect_tls
+- op_net_listen_tls
+- op_net_accept_tls
+- op_net_accept_unix
+- op_net_connect_unix
+- op_net_listen_unix
+- op_net_listen_unixpacket
+- op_net_recv_unixpacket
+- op_net_send_unixpacket
+
+### TLS
+
+- op_tls_start
+- op_tls_handshake
+- op_tls_key_null
+- op_tls_key_static
+- op_tls_key_static_from_file
+- op_tls_cert_resolver_create
+- op_tls_cert_resolver_poll
+- op_tls_cert_resolver_resolve
+- op_tls_cert_resolver_resolve_error
+- op_tls_start
+- op_tls_handshake
+
+### Other
+
+- op_node_unstable_net_listen_udp
+- op_dns_resolve
+- op_dns_resolve
+- op_set_nodelay
+- op_set_keepalive
+- op_node_unstable_net_listen_unixpacket