123456789101112131415161718192021222324252627282930313233343536373839404142 |
- package connection
- import (
- "context"
- "io"
- rpc "zombiezen.com/go/capnproto2/rpc"
- "github.com/cloudflare/cloudflared/logger"
- "github.com/cloudflare/cloudflared/tunnelrpc"
- tunnelpogs "github.com/cloudflare/cloudflared/tunnelrpc/pogs"
- )
- // NewTunnelRPCClient creates and returns a new RPC client, which will communicate
- // using a stream on the given muxer
- func NewTunnelRPCClient(
- ctx context.Context,
- stream io.ReadWriteCloser,
- logger logger.Service,
- ) (client tunnelpogs.TunnelServer_PogsClient, err error) {
- conn := rpc.NewConn(
- tunnelrpc.NewTransportLogger(logger, rpc.StreamTransport(stream)),
- tunnelrpc.ConnLog(logger),
- )
- registrationClient := tunnelpogs.RegistrationServer_PogsClient{Client: conn.Bootstrap(ctx), Conn: conn}
- client = tunnelpogs.TunnelServer_PogsClient{RegistrationServer_PogsClient: registrationClient, Client: conn.Bootstrap(ctx), Conn: conn}
- return client, nil
- }
- func NewRegistrationRPCClient(
- ctx context.Context,
- stream io.ReadWriteCloser,
- logger logger.Service,
- ) (client tunnelpogs.RegistrationServer_PogsClient, err error) {
- conn := rpc.NewConn(
- tunnelrpc.NewTransportLogger(logger, rpc.StreamTransport(stream)),
- tunnelrpc.ConnLog(logger),
- )
- client = tunnelpogs.RegistrationServer_PogsClient{Client: conn.Bootstrap(ctx), Conn: conn}
- return client, nil
- }
|