Documentation ¶
Index ¶
- func CreateCertificate(templateCert *x509.Certificate, rootCa *x509.Certificate, rootKey interface{}) (*x509.Certificate, interface{}, error)
- func GenerateSelfSignedCertKey(keySize int) (*x509.Certificate, *rsa.PrivateKey, error)
- func GenerateSelfSignedCertKey2(keySize int, host string, alternateIPs []net.IP, alternateDNS []string) (*x509.Certificate, *rsa.PrivateKey, error)
- func GenerateTlsSelfSignedCert() (tls.Certificate, error)
- func Listen(ql quic.Listener) net.Listener
- func LoadCertificate(rootCaPath, rootKeyPath string) (*x509.Certificate, interface{}, error)
- func NewConn(conn quic.Connection) (net.Conn, error)
- func NewCredentials(tlsConfig *tls.Config) credentials.TransportCredentials
- func NewPacketConn(addr string) (net.PacketConn, error)
- func NewQuicDialer(tlsConf *tls.Config) func(context.Context, string) (net.Conn, error)
- type Conn
- func (c *Conn) Close() error
- func (c *Conn) LocalAddr() net.Addr
- func (c *Conn) Read(b []byte) (n int, err error)
- func (c *Conn) RemoteAddr() net.Addr
- func (c *Conn) SetDeadline(t time.Time) error
- func (c *Conn) SetReadDeadline(t time.Time) error
- func (c *Conn) SetWriteDeadline(t time.Time) error
- func (c *Conn) Write(b []byte) (n int, err error)
- type Credentials
- func (pt *Credentials) ClientHandshake(ctx context.Context, authority string, conn net.Conn) (net.Conn, credentials.AuthInfo, error)
- func (pt *Credentials) Clone() credentials.TransportCredentials
- func (pt *Credentials) Info() credentials.ProtocolInfo
- func (pt *Credentials) OverrideServerName(name string) error
- func (pt *Credentials) ServerHandshake(conn net.Conn) (net.Conn, credentials.AuthInfo, error)
- type Info
- type Listener
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func CreateCertificate ¶
func CreateCertificate(templateCert *x509.Certificate, rootCa *x509.Certificate, rootKey interface{}) (*x509.Certificate, interface{}, error)
func GenerateSelfSignedCertKey ¶
func GenerateSelfSignedCertKey(keySize int) (*x509.Certificate, *rsa.PrivateKey, error)
func GenerateSelfSignedCertKey2 ¶
func GenerateSelfSignedCertKey2(keySize int, host string, alternateIPs []net.IP, alternateDNS []string) (*x509.Certificate, *rsa.PrivateKey, error)
func GenerateTlsSelfSignedCert ¶
func GenerateTlsSelfSignedCert() (tls.Certificate, error)
func LoadCertificate ¶
func LoadCertificate(rootCaPath, rootKeyPath string) (*x509.Certificate, interface{}, error)
func NewCredentials ¶
func NewCredentials(tlsConfig *tls.Config) credentials.TransportCredentials
func NewPacketConn ¶
func NewPacketConn(addr string) (net.PacketConn, error)
Types ¶
type Conn ¶
type Conn struct {
// contains filtered or unexported fields
}
func (*Conn) Close ¶
Close closes the connection. Any blocked Read or Write operations will be unblocked and return errors.
func (*Conn) Read ¶
Read reads data from the connection. Read can be made to time out and return an Error with Timeout() == true after a fixed time limit; see SetDeadline and SetReadDeadline.
func (*Conn) RemoteAddr ¶
RemoteAddr returns the remote network address.
func (*Conn) SetDeadline ¶
SetDeadline sets the read and write deadlines associated with the connection. It is equivalent to calling both SetReadDeadline and SetWriteDeadline.
A deadline is an absolute time after which I/O operations fail with a timeout (see type Error) instead of blocking. The deadline applies to all future and pending I/O, not just the immediately following call to Read or Write. After a deadline has been exceeded, the connection can be refreshed by setting a deadline in the future.
An idle timeout can be implemented by repeatedly extending the deadline after successful Read or Write calls.
A zero value for t means I/O operations will not time out.
func (*Conn) SetReadDeadline ¶
SetReadDeadline sets the deadline for future Read calls and any currently-blocked Read call. A zero value for t means Read will not time out.
func (*Conn) SetWriteDeadline ¶
SetWriteDeadline sets the deadline for future Write calls and any currently-blocked Write call. Even if write times out, it may return n > 0, indicating that some of the data was successfully written. A zero value for t means Write will not time out.
type Credentials ¶
type Credentials struct {
// contains filtered or unexported fields
}
func (*Credentials) ClientHandshake ¶
func (pt *Credentials) ClientHandshake(ctx context.Context, authority string, conn net.Conn) (net.Conn, credentials.AuthInfo, error)
ClientHandshake does the authentication handshake specified by the corresponding authentication protocol on rawConn for clients. It returns the authenticated connection and the corresponding auth information about the connection. Implementations must use the provided context to implement timely cancellation. gRPC will try to reconnect if the error returned is a temporary error (io.EOF, context.DeadlineExceeded or err.Temporary() == true). If the returned error is a wrapper error, implementations should make sure that the error implements Temporary() to have the correct retry behaviors.
If the returned net.Conn is closed, it MUST close the net.Conn provided.
func (*Credentials) Clone ¶
func (pt *Credentials) Clone() credentials.TransportCredentials
Clone makes a copy of this Credentials.
func (*Credentials) Info ¶
func (pt *Credentials) Info() credentials.ProtocolInfo
Info provides the ProtocolInfo of this Credentials.
func (*Credentials) OverrideServerName ¶
func (pt *Credentials) OverrideServerName(name string) error
OverrideServerName overrides the server name used to verify the hostname on the returned certificates from the server. gRPC internals also use it to override the virtual hosting name if it is set. It must be called before dialing. Currently, this is only used by grpclb.
func (*Credentials) ServerHandshake ¶
func (pt *Credentials) ServerHandshake(conn net.Conn) (net.Conn, credentials.AuthInfo, error)
ServerHandshake does the authentication handshake for servers. It returns the authenticated connection and the corresponding auth information about the connection.
If the returned net.Conn is closed, it MUST close the net.Conn provided.
type Info ¶
type Info struct {
// contains filtered or unexported fields
}
Info contains the auth information