1
0
mirror of https://github.com/fumiama/terasu.git synced 2026-06-05 09:10:24 +08:00
Files
terasu/README.md
2024-04-18 18:53:34 +09:00

1.1 KiB

TeRaSu (TRS)

よの光遍く空へ照しつつ

土棲むものは孰れか見ゆや

counter

Usage

cli := http.Client{
    Transport: &http.Transport{
        DialTLS: func(network, addr string) (net.Conn, error) {
            host, port, err := net.SplitHostPort(addr)
            if err != nil {
                return nil, err
            }
            addrs, err := net.DefaultResolver.LookupHost(ctx, host)
            if err != nil {
                return nil, err
            }
            conn, err := net.Dial(network, net.JoinHostPort(addrs[0], port))
            if err != nil {
                return nil, err
            }
            tlsConn := tls.Client(conn, &tls.Config{
                ServerName: host,
            })
            err = terasu.Use(tlsConn).Handshake()
            if err != nil {
                _ = tlsConn.Close()
                return nil, err
            }
            return tlsConn, nil
        },
    },
}
resp, err := cli.Get(url)