transport

package
v0.9.5 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 25, 2024 License: Apache-2.0 Imports: 22 Imported by: 0

Documentation

Overview

Package transport provided internal helpers for the two transport packages (grpctransport and httptransport).

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func BaseTransport added in v0.9.2

func BaseTransport() *http.Transport

BaseTransport returns a default http.Transport which can be used if http.DefaultTransport has been overwritten.

func CloneDetectOptions

func CloneDetectOptions(oldDo *credentials.DetectOptions) *credentials.DetectOptions

CloneDetectOptions clones a user set detect option into some new memory that we can internally manipulate before sending onto the detect package.

func DefaultHTTPClientWithTLS added in v0.6.1

func DefaultHTTPClientWithTLS(tlsConfig *tls.Config) *http.Client

DefaultHTTPClientWithTLS constructs an HTTPClient using the provided tlsConfig, to support mTLS.

func GetClientCertificateProvider added in v0.6.1

func GetClientCertificateProvider(opts *Options) (cert.Provider, error)

GetClientCertificateProvider returns a default client certificate source, if not provided by the user.

A nil default source can be returned if the source does not exist. Any exceptions encountered while initializing the default source will be reported as client error (ex. corrupt metadata file).

func GetGRPCTransportCredsAndEndpoint

func GetGRPCTransportCredsAndEndpoint(opts *Options) (credentials.TransportCredentials, string, error)

GetGRPCTransportCredsAndEndpoint returns an instance of google.golang.org/grpc/credentials.TransportCredentials, and the corresponding endpoint to use for GRPC client.

func GetHTTPTransportConfig

func GetHTTPTransportConfig(opts *Options) (cert.Provider, func(context.Context, string, string) (net.Conn, error), error)

GetHTTPTransportConfig returns a client certificate source and a function for dialing MTLS with S2A.

func GetMTLSS2AAddress added in v0.9.0

func GetMTLSS2AAddress() string

GetMTLSS2AAddress returns the S2A address to be reached via MTLS connection. Returns empty string if not set or invalid.

func GetS2AAddress

func GetS2AAddress() string

GetS2AAddress returns the S2A address to be reached via plaintext connection. Returns empty string if not set or invalid.

func ValidateUniverseDomain added in v0.2.0

func ValidateUniverseDomain(clientUniverseDomain, credentialsUniverseDomain string) error

ValidateUniverseDomain verifies that the universe domain configured for the client matches the universe domain configured for the credentials.

Types

type Options

type Options struct {
	Endpoint                string
	DefaultMTLSEndpoint     string
	DefaultEndpointTemplate string
	ClientCertProvider      cert.Provider
	Client                  *http.Client
	UniverseDomain          string
	EnableDirectPath        bool
	EnableDirectPathXds     bool
}

Options is a struct that is duplicated information from the individual transport packages in order to avoid cyclic deps. It correlates 1:1 with fields on httptransport.Options and grpctransport.Options.

Directories

Path Synopsis
cmd
test_signer.go is a net/rpc server that listens on stdin/stdout, exposing mock methods for testing enterprise certificate proxy flow.
test_signer.go is a net/rpc server that listens on stdin/stdout, exposing mock methods for testing enterprise certificate proxy flow.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL