XU XUv0.8.8
EN

API

#github.com/xulang-org/packages/dns

import: dns #github.com/xulang-org/packages/dns

counts: 7 函数, 7 方法, 3 类型, 6 常量, 0 方法集

扩展包 `dns #github.com/xulang-org/packages/dns`,由模块 github.com/xulang-org/packages 提供。

github.com/xulang-org/packages · 0.1.1 · 安装与使用

client

XuAPI
pub fn client(endpoint string) DnsClient

用途

客户端。

参数

endpoint string
endpoint(string)

返回

DnsClient — 该类型的值

pool

XuAPI
pub fn pool(endpoint string, max_conns int) DnsPool

用途

pool,返回 DnsPool。

参数

endpoint string
endpoint(string)
max_conns int
max_conns(int)

返回

DnsPool — 该类型的值

struct DnsClient

XuAPI
pub struct DnsClient {
    pub host string
    pub port int
}

用途

公开结构体 `DnsClient`。

参数

host string
主机
port int
端口

new_client

XuAPI
pub fn new_client(endpoint string) DnsClient

用途

构造 client。

参数

endpoint string
endpoint(string)

返回

DnsClient — 该类型的值

(DnsClient) connect

XuAPI
pub fn (c DnsClient) connect() int

用途

在 `DnsClient` 上调用 `connect`。失败时 throw。

参数

c DnsClient
接收者 DnsClient(值接收者)

返回

int — 该类型的值

(DnsClient) resolve_a_on_fd

XuAPI
pub fn (c DnsClient) resolve_a_on_fd(fd int, domain string) []string

用途

`DnsClient` 上的方法:解析a于fd。失败时 throw。

参数

c DnsClient
接收者 DnsClient(值接收者)
fd int
文件描述符(int)
domain string
domain(string)

返回

[]string — 切片结果

(DnsClient) resolve_a

XuAPI
pub fn (c DnsClient) resolve_a(domain string) []string

用途

`DnsClient` 上的方法:解析a。失败时 throw。

参数

c DnsClient
接收者 DnsClient(值接收者)
domain string
domain(string)

返回

[]string — 切片结果

const type_a

XuAPI
pub const type_a = 1

用途

公开常量 `type_a`。 值为 `1`

参数

无

const type_ns

XuAPI
pub const type_ns = 2

用途

公开常量 `type_ns`。 值为 `2`

参数

无

const type_cname

XuAPI
pub const type_cname = 5

用途

公开常量 `type_cname`。 值为 `5`

参数

无

const type_soa

XuAPI
pub const type_soa = 6

用途

公开常量 `type_soa`。 值为 `6`

参数

无

const type_txt

XuAPI
pub const type_txt = 16

用途

公开常量 `type_txt`。 值为 `16`

参数

无

const class_in

XuAPI
pub const class_in = 1

用途

公开常量 `class_in`。 值为 `1`

参数

无

encode_domain

XuAPI
pub fn encode_domain(domain string) string

用途

编码。

参数

domain string
domain(string)

返回

string — 结果字符串

build_query_packet

XuAPI
pub fn build_query_packet(tx_id int, domain string, qtype int) string

用途

build查询串数据报。

参数

tx_id int
tx_id(int)
domain string
domain(string)
qtype int
qtype(int)

返回

string — 结果字符串

struct DnsAnswer

XuAPI
pub struct DnsAnswer {
    pub name string
    pub rtype int
    pub rclass int
    pub ttl int
    pub data string
}

用途

公开结构体 `DnsAnswer`。

参数

name string
名字
rtype int
字段(int)
rclass int
字段(int)
ttl int
字段(int)
data string
数据

parse_a_records

XuAPI
pub fn parse_a_records(pkt string) []string

用途

解析为 a records。

参数

pkt string
pkt(string)

返回

[]string — 切片结果

struct DnsPool

XuAPI
pub struct DnsPool {
    pub client DnsClient
    pub idle chan int
    pub max_idle int
}

用途

公开结构体 `DnsPool`。

参数

client DnsClient
字段(DnsClient)
idle chan int
字段(通道;类型 chan int)
max_idle int
字段(int)

open_pool

XuAPI
pub fn open_pool(endpoint string, max_idle int) DnsPool

用途

打开pool。

参数

endpoint string
endpoint(string)
max_idle int
max_idle(int)

返回

DnsPool — 该类型的值

(&DnsPool) get_conn

XuAPI
pub fn (p &DnsPool) get_conn() int

用途

`&DnsPool` 上的方法:读取 conn。

参数

p &DnsPool
接收者 &DnsPool(借用)

返回

int — 该类型的值

(&DnsPool) put_conn

XuAPI
pub fn (p &DnsPool) put_conn(fd int)

用途

`&DnsPool` 上的方法:put连接。

参数

p &DnsPool
接收者 &DnsPool(借用)
fd int
文件描述符(int)

(&DnsPool) resolve_a

XuAPI
pub fn (p &DnsPool) resolve_a(domain string) []string

用途

`&DnsPool` 上的方法:解析a。失败时 throw。

参数

p &DnsPool
接收者 &DnsPool(借用)
domain string
domain(string)

返回

[]string — 切片结果

(&DnsPool) close

XuAPI
pub fn (p &DnsPool) close()

用途

`&DnsPool` 上的方法:关闭资源。

参数

p &DnsPool
接收者 &DnsPool(借用)