mirror of
https://github.com/denoland/deno.git
synced 2025-03-03 17:34:47 -05:00
fix: listenDefaults/dialDefaults may be overriden in some cases (#3027)
This commit is contained in:
parent
3892cf5901
commit
d36391ad20
1 changed files with 13 additions and 7 deletions
20
js/net.ts
20
js/net.ts
|
@ -135,7 +135,6 @@ export interface ListenOptions {
|
||||||
hostname?: string;
|
hostname?: string;
|
||||||
transport?: Transport;
|
transport?: Transport;
|
||||||
}
|
}
|
||||||
const listenDefaults = { hostname: "0.0.0.0", transport: "tcp" };
|
|
||||||
|
|
||||||
/** Listen announces on the local transport address.
|
/** Listen announces on the local transport address.
|
||||||
*
|
*
|
||||||
|
@ -155,9 +154,14 @@ const listenDefaults = { hostname: "0.0.0.0", transport: "tcp" };
|
||||||
* listen({ hostname: "golang.org", port: 80, transport: "tcp" })
|
* listen({ hostname: "golang.org", port: 80, transport: "tcp" })
|
||||||
*/
|
*/
|
||||||
export function listen(options: ListenOptions): Listener {
|
export function listen(options: ListenOptions): Listener {
|
||||||
options = Object.assign(listenDefaults, options);
|
const hostname = options.hostname || "0.0.0.0";
|
||||||
const res = sendSync(dispatch.OP_LISTEN, options);
|
const transport = options.transport || "tcp";
|
||||||
return new ListenerImpl(res.rid, options.transport, res.localAddr);
|
const res = sendSync(dispatch.OP_LISTEN, {
|
||||||
|
hostname,
|
||||||
|
port: options.port,
|
||||||
|
transport
|
||||||
|
});
|
||||||
|
return new ListenerImpl(res.rid, transport, res.localAddr);
|
||||||
}
|
}
|
||||||
|
|
||||||
export interface DialOptions {
|
export interface DialOptions {
|
||||||
|
@ -165,7 +169,6 @@ export interface DialOptions {
|
||||||
hostname?: string;
|
hostname?: string;
|
||||||
transport?: Transport;
|
transport?: Transport;
|
||||||
}
|
}
|
||||||
const dialDefaults = { hostname: "127.0.0.1", transport: "tcp" };
|
|
||||||
|
|
||||||
/** Dial connects to the address on the named transport.
|
/** Dial connects to the address on the named transport.
|
||||||
*
|
*
|
||||||
|
@ -185,8 +188,11 @@ const dialDefaults = { hostname: "127.0.0.1", transport: "tcp" };
|
||||||
* dial({ hostname: "golang.org", port: 80, transport: "tcp" })
|
* dial({ hostname: "golang.org", port: 80, transport: "tcp" })
|
||||||
*/
|
*/
|
||||||
export async function dial(options: DialOptions): Promise<Conn> {
|
export async function dial(options: DialOptions): Promise<Conn> {
|
||||||
options = Object.assign(dialDefaults, options);
|
const res = await sendAsync(dispatch.OP_DIAL, {
|
||||||
const res = await sendAsync(dispatch.OP_DIAL, options);
|
hostname: options.hostname || "127.0.0.1",
|
||||||
|
port: options.port,
|
||||||
|
transport: options.transport || "tcp"
|
||||||
|
});
|
||||||
return new ConnImpl(res.rid, res.remoteAddr!, res.localAddr!);
|
return new ConnImpl(res.rid, res.remoteAddr!, res.localAddr!);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue